htmljavascript
<!doctype> <html> <head></head> <body> <script type="text/javascript" src="r4.js"></script> <script type="text/javascript" src="main.js"></script> </body> </html>
main.jshtml
var worker =new Worker("worker.js"); console.log(r4) worker.postMessage("hello world"); //向worker发送数据 worker.onmessage =function(evt){ //接收worker传过来的数据函数 console.log(evt.data); //输出worker发送来的数据 }
worker.jsjava
onmessage =function (evt){ var d = evt.data;//经过evt.data得到发送来的数据 //将获取到的数据发送会主线程 if (d) { get("worker.html", function (dd) { postMessage(dd); }) } }
get方法表明ajax方法。ajax
window对象没法使用
能够使用indexedDB缓存
因为 Web Worker 的多线程行为,因此它们只能使用 JavaScript 功能的子集:多线程
navigator 对象
location 对象(只读)
XMLHttpRequest
setTimeout()/clearTimeout() 和 setInterval()/clearInterval()
应用缓存
使用 importScripts() 方法导入外部脚本
生成其余 Web Worker函数