Web Worker

    运行在后台JavaScript,独立于其他脚本,不影响页面性能


使用实例

    检测浏览器是否支持 Web Worker

if(typeof(Worker) !== "undefined"){
    //支持
}
else{
    //不支持
}


    创建Web Worker 文件,存储“demo_worker.js”文件中

var i=0;

function timeCount(){
    i=i+1;
    postMessage(i);    //向html页面传回一段消息
    setTimeout("timeCount()",500);
}
timeCount();

     

    在HTML页面调用

if(typeof(w)=="undefined")  //判断是否存在worker。
{
    w=new Worker("demo_workers.js");  //若无,则创建一个新的web worker对象来运行“demo_worker.js”
}

w.onmessage=function(event){
    document.getElementById("result").innerHTML=event.data;   //从web worker对象接收消息
};


    终止web worker

w.terminate();


无法访问

    因为web worker位于外部文件,所以无法访问:

        window对象

        document对象

        parent对象