1. 为什么使用Web Workers API
通过使用该API,web应用程序可以独立于主线程,运行一个单独的线程来处理脚本。
可以在独立的线程中解决耗时较长的任务,避免主线程阻塞。
2. 应用
1. 新建一个worker.js文件,将耗时较长的js代码放入其中;通过postMessage传递数据
// worker.js let sum = 0; for(let i=0; i<1000000; i++) { sum += i; } self.postMessage(sum); // self表示当前窗口
2. 新建Worker实例
const worker = new Worker('./worker.js'); // 传入一个文件 worker.onmessage = function(e){ // e.data获取传递的数据 }