5

我阅读了https://developer.mozilla.org/en-US/docs/WebAssembly/Using_the_JavaScript_APIhttp://webassembly.org/docs/js/,似乎我找到了从 wasm 调用 Javascript 函数的所有示例是用受 LISP 启发的语法编写的。

是否可以使用 emscripten C 在 wasm 中导入 JS 函数?

4

1 回答 1

2

是的,Emscripten记录了如何做到这一点extern "C"最简单的事情是像在 C++ 中一样声明 JS 函数。它将在您的 wasm 模块的导出中,然后您需要将其作为导入传递。

作为另一个示例,wasm 瀑布在 JavaScript 中构建musl,并运行一些GCC 测试,这些测试将其编译为 wasm。所有 C 库函数都在 JS 中,wasm 为它们调用 JS。没有魔法:C 库函数只是声明为extern "C",然后作为import传入。

于 2017-04-05T00:53:19.467 回答