C#有类似的问题,但我们没有看到任何JavaScript.
在循环中声明变量是否被接受?
假设循环为200次迭代.
在样品1上使用样品2是否存在性能要求(记忆和速度)?我们正在使用jQuery循环.它提高了我们将var保留在循环中的代码可读性,但是如果它不是最佳实践或者会导致性能大幅下降或内存使用量增加,我们将进行切换.
**Sample 1:**
$(this).each( function() {
var i = $(some_div).clone();
*** edit i ***
$(another_div).append( i );
});
**Sample 2:**
var i = null;
*** edit i ***
$(this).each( function() {
i = $(some_div).clone();
$(another_div).append( i );
});
解决方法:
样本1(内部变量)更快:
http://jsperf.com/variable-outside-faster
但差异不值得关注.