我知道这是不成熟的优化,但我只是想知道它需要多长时间才能解决这个问题 (请注意,我知道这没有太大区别,但是在大型游戏循环中变量可以重用怎么办?)
function testone(parameter1, parameter2, parameter3)
{
return parameter1 * parameter2 * parameter3;
}
console.log("" + testone(50,50,50));
VS
var
parameter1 = 50,
parameter2 = 50,
parameter3 = 50,
result = 0;
function testtwo()
{
result = parameter1 * parameter2 * parameter3;
}
testtwo();
console.log("" + result);
我只是不知道如何进行基准测试,所以如果我知道我会自己做,但如果这是一个非常糟糕的问题,请不要代表我,只要告诉我,我就会删除这个问题
最佳答案
浏览器中的 JIT 编译器会优化函数。后一种方法需要更迂回的方式来访问变量。
http://jsperf.com/params-vs-lexical-scope
上面的JSPerf测试表明确实如此。即使第二个示例在性能方面更好,维护起来也会更加困难,并且不值得您从中获得任何微小的好处。
关于javascript - 函数中的参数是否会改变 Js 中的内存使用量或速度使用量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22562505/