Microsoft, Google和Mozilla紛紛在其博客文章中宣布,最新的瀏覽器中會展示WebAssembly的功能。
這次聯合聲明是標準化WebAssembly二進制文件格式的重要的一步。各瀏覽器巨頭的這次合作,使得他們可以互相交流文件格式及其未來發展趨勢。
WebAssembly項目建立在asm.js實現之上。和 asm.js類似,WebAssembly提供了一個“自動備份,沙盒執行環境”。而與asm.js不同的是,等值的WebAssembly二進制格式更小,并且不再需要解析JavaScript。瀏覽器可以在本地更快地解析二進制。Brendan Eich在 Fluent 2016 Conference主旨發言中稱WebAssembly是“安全的,快速的,并可以自動檢查代碼,這都是JavaScript做不到的。從某種程度上來說,WebAssembly是一個安全的,本機網絡格式”。
在Google的V8引擎項目聲明中,Seth Thompson指出:
V8中實現WebAssembly目的是重用許多現存的JavaScript虛擬機設施,特別是TurboFan編譯器。譯碼器產生TurboFan圖,進行不同的最優化處理,由將優化后的JavaScript和asm.js轉換成機器語言的同一后端進行最后處理,轉換為機器語言。
WebAssembly W3C Community Group的首席 ,Luke Wagner先生在Mozilla camp上表示:
我們在Firefox中重構了現有的asm.js優化管道,以使用WebAssembly二進制格式將asm.js代碼從主解析線程送至后臺編譯器線程。
WebAssembly應用程序示例可以在http://webassembly.github.io/demo/獲得;在下面你可以看到Edge瀏覽器中一個游戲的視頻。
為實現實驗性功能:
在Chrome瀏覽器中:請使用Chrome Canary51.0.2677.0或更高的版本,打開chrome://flags#enable-webassembly標記 在Firefox瀏覽器中:請使用最新的Firefox Nightly Edition,將javascript.options.wasm設置為true。Edge瀏覽器對WebAssembly支持現在只在Microsoft內核中可用,WebKit的實現仍在開發中。
查看英文原文:WebAssembly Preview Functionality Arrives in Browsers