我试图了解ASM究竟是如何工作的以及何时开始工作.
我从asm.js网站上获取了一个小函数.我使用模块模式包装它:一次用于asm,一次使用相同的语法,但没有"使用asm"注释,一次像vanilla-javascript.
var add_asm = (function MyAOTMod(stdlib, foreign, heap) {
"use asm";
var sqrt = stdlib.Math.sqrt;
function square(x) {
x = +x;
return +(x * x);
}
return function(x, y) {
x = +x; // x has type double
y = +y; // y has type double
return +sqrt(square(x) + square(y));
};
}(window));
var add_reg_asmstyle = (function MyAsmLikeRegularMod() {
function square(x) {
x = +x;
return +(x * x);
}
return function(x, y) {
x = +x; // x has …Run Code Online (Sandbox Code Playgroud)