javascript - Emscripten 和 ASMjs

标签 javascript emscripten asm.js

Emscripten(或 llvm 编译器或转译器)是专门用于将 c/c++ 程序转换为 JavaScript(ASMjs) 的单一用途吗?我正在阅读 ASMjs 如何比直接 JavaScript 更快的内容。因此,在我看来,这比直接用 javascript 编码要好。但是这个程序怎么会比直接用 JavaScript 编写更快呢?这怎么可能。当程序可以直接执行主程序而不必先编译时,不是速度最快吗

最佳答案

ASM.js 是优化的 JavaScript,这使得它比直接用 Javascript 编写更快。这就是它的全部内容。

编译步骤是转换 C/C++ 并生成 ASM.js 源代码,然后将其提供给浏览器等。除非源代码发生更改,否则不需要重新编译,因此有当 ASM.js 是 Web 应用程序的一部分时,不需要编译步骤。

关于javascript - Emscripten 和 ASMjs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30904336/

相关文章:

node.js - 如何使用库导入来编译 C 文件到 WebAssembly 文件 (Emscripten)

javascript - 在nodejs中使用async和await获取Promise { <pending> }

java - Dwr回调 "data"对象长度

javascript - Emscripten Uncaught RangeError : Source is too large, 多个 Float32Arrays

javascript - 按位运算如何提高 Asm.js 的性能?

javascript - 将 asm 放入现有的 JS 应用程序中

.net - 编译 C# → LLVM → ASM.JS?

javascript - 如何编写正则表达式来验证日期?

javascript - 销毁 var 中包装的实例

javascript - 无法通过 JS 中的 Emscripten 获取 C++ SDL 代码