当前位置:常识百科馆>游戏数码>互联网>

什么是 Web Worker?

互联网 阅读(1.71W)

好多人不知道什么是Web Worker,今天我就和大家说一说

什么是 Web Worker?

操作方法

(01)web worker 是运行在后台的 JavaScript,不会影响页面的性能。

什么是 Web Worker? 第2张

(02)什么是 Web Worker?当在 HTML 页面中执行脚本时,页面的状态是不可响应的,直到脚本已完成。

什么是 Web Worker? 第3张

(03)web worker 是运行在后台的 JavaScript,独立于其他脚本,不会影响页面的性能。您可以继续做任何愿意做的事情:点击、选取内容等等,而此时 web worker 在后台运行。

什么是 Web Worker? 第4张

(04)检测 Web Worker 支持在创建 web worker 之前,请检测用户的浏览器是否支持它:if(typeof(Worker)!=="undefined")  {  // Yes! Web worker support!  // Some code.....  }else  {  // Sorry! No Web Worker support..  }

什么是 Web Worker? 第5张

(05)创建 web worker 文件现在,让我们在一个外部 JavaScript 中创建我们的 web worker。在这里,我们创建了计数脚本。该脚本存储于 "demo_" 文件中:var i=0;function timedCount(){i=i+1;postMessage(i);setTimeout("timedCount()",500);}timedCount();

什么是 Web Worker? 第6张

(06)以上代码中重要的部分是 postMessage() 方法 - 它用于向 HTML 页面传回一段消息。注释:web worker 通常不用于如此简单的脚本,而是用于更耗费 CPU 资源的任务。

什么是 Web Worker? 第7张

(07)创建 Web Worker 对象我们已经有了 web worker 文件,现在我们需要从 HTML 页面调用它。下面的代码检测是否存在 worker,如果不存在,- 它会创建一个新的 web worker 对象,然后运行 "demo_" 中的代码:if(typeof(w)=="undefined")  {  w=new Worker("demo_");  }

什么是 Web Worker? 第8张