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函數