WebAssembly记录
- 历史
- 2015年4月 WASM Community Group 成立
- 2017年3月 四大主流浏览器达成MVP标准共识
- 2017年8月 WASM W3C Working Group 成立, 开发进入正常技术和标准迭代流程
- 技术核心
- 是一种以 .wasm 作为后缀二进制格式(0x6d736100开头), 一种高性能的二进制格式并且可以直接在浏览器加载和运行
- 可以通过JS接口直接在浏览器加载, 解析和运行
- 运行在浏览器的安全沙箱内
- WebAssembly = Web(Web浏览器) + Assembly(高性能)
- 由于JS性能较低, 所以发明了WebAssembly作为补充
- Js性能较低的原因
- 动态语言
- 编译流程复杂冗余, 流入下图即使一个+号运算也需要较复杂的流程判断类型等
曾经的其他尝试 ASM.js
- 一种JavaScript的子集
- 如下图通过Annotation(参数类型注解)的方式告诉JS引擎具体的解析方式