我正在做几个可以用平方根或者用trigo-1函数(acos,asin,atan)完成的计算。 因为我将多次使用它们并且并非所有浏览器都很快我需要知道哪个函数更“昂贵”,Math.sqrt()或Math.asin()/ Math.acos()/ Math.atan ()
TNX。
答案 0 :(得分:-1)
正如您在此处所看到的那样http://jsperf.com/sqrtvsasin Math.sqrt
的操作速度比Math.asin
答案 1 :(得分:-1)
你可以试试自己。我没有尝试过,但可以随意运行这样的脚本:
var largeNumber = 1000;
// first method
start = performance.now();
for (var i = 1; i < largeNumber ; i++) {
Math.sqrt(i);
}
end = performance.now();
diff = end - start;
console.log(diff);
// second method
start2 = performance.now();
for (var i = 1; i < largeNumber ; i++) {
Math.asin(i)/Math.acos(i)/Math.atan(i);
}
end2 = performance.now();
diff2 = end2 - start2;
console.log(diff2);
如果差异不显着,请增加largeNumber的值。
我怀疑Math.sqrt是最快的,因为javascript引擎创建者可能想出了计算平方根的最快方法。