Google、微軟、蘋(píng)果:是時(shí)候提升瀏覽器速度了
Google、蘋(píng)果、微軟和Mozilla的工程師們正在聯(lián)合開(kāi)發(fā)WebAssembly。WebAssembly是一種可用于未來(lái)瀏覽器中的字節(jié)碼(bytecode),可使瀏覽器性能提升20倍。
字節(jié)碼是一種機(jī)器可讀的指令集,與高級(jí)語(yǔ)言相比,字節(jié)碼的加載速度更快。WebAssembly項(xiàng)目旨在開(kāi)發(fā)全新的字節(jié)碼,從而讓桌面和移動(dòng)端瀏覽器變得更高效。
目前瀏覽器使用JavaScript語(yǔ)言來(lái)解釋代碼,提供網(wǎng)站上諸如表格和動(dòng)態(tài)內(nèi)容等功能。通過(guò)asm.js,當(dāng)前瀏覽器的內(nèi)容加載速度已經(jīng)得到改善,但基于字節(jié)碼的系統(tǒng)與.NET有些類(lèi)似,加載速度更快。
WebAssembly源于Asm.js,是一個(gè)二進(jìn)制格式,本地解碼速度比JavaScript解析快得多(測(cè)試顯示超過(guò)20倍),在移動(dòng)設(shè)備上的使用體驗(yàn)更佳。
當(dāng)前Asm.js面臨的一個(gè)問(wèn)題是解析速度,這在移動(dòng)設(shè)備上尤其致命,而WebAssembly則會(huì)讓JavaScript得到解脫。WebAssembly文件名后綴.wasm,將支持廣泛的編程語(yǔ)言。
WebAssembly已被提議為未來(lái)瀏覽器的新標(biāo)準(zhǔn),將來(lái)一旦部署,它將為網(wǎng)頁(yè)內(nèi)容和網(wǎng)頁(yè)應(yīng)用帶來(lái)類(lèi)似于手機(jī)應(yīng)用(App)般的性能。在WebAssembly真正普及前,開(kāi)發(fā)人員計(jì)劃首先將其作為彌補(bǔ)JavaScript腳本的缺陷進(jìn)行發(fā)展。
WebAssembly目前尚處于開(kāi)發(fā)的早期階段,其規(guī)范和更高階的設(shè)計(jì)尚未最終確定,但鑒于Google、蘋(píng)果、微軟和Mozilla等大牌瀏覽器廠商都參與其中,相信WebAssembly會(huì)以最快的速度上市。