我在three.js中看到,许多语言都有通用代码功能:
for ( var i = 0, l = something.length; i < l; i++ ) {
do some stuff over i
}
但我读到javascript性能可以更好地使用:
var i = something.length;
while(i--){
do some stuff over i
}
这是否真的能显着改善任何表现?是否有理由偏爱另一个?
答案 0 :(得分:3)
这是否真的能显着改善任何表现?
没有。不可靠的跨浏览器(也就是说,跨JavaScript实现)。
此外,请注意,在您的示例中,您的while
循环向后循环( n 为0),您引用的for
循环向前循环(0到 ñ)。有时候很重要。
一般来说,微优化很少适用,在JavaScript的情况下,这是特别,其中野外的不同实现具有明显不同的性能特征。相反,请将代码编写为清除并且可维护,并且只有在出现时才会解决特定的性能问题,并且如果它们出现在目标引擎上解决它们。