相关疑难解决方法(0)

在JavaScript中循环使用一组元素的最佳方法是什么?

在过去和大多数我目前的项目中,我倾向于使用这样的for循环:

var elements = document.getElementsByTagName('div');
for (var i=0; i<elements.length; i++) {
    doSomething(elements[i]);
}
Run Code Online (Sandbox Code Playgroud)

我听说使用"反向"循环更快但我没有真正的方法来证实这一点:

var elements = document.getElementsByTagName('div'), 
    length = elements.length;

while(length--) {
    doSomething(elements[length]);
}
Run Code Online (Sandbox Code Playgroud)

什么被认为是循环JavaScript中的元素或任何数组的最佳实践?

javascript arrays loops elements

53
推荐指数
7
解决办法
10万
查看次数

在JavaScript中执行循环的最佳方法是什么?

我偶然发现了几种在JavaScript中循环的方法,我最喜欢的是:

for(var i = 0; i < a.length; i++){
    var element = a[i];
}
Run Code Online (Sandbox Code Playgroud)

但是在这里进行了测试(http://www.robertnyman.com/2008/04/11/javascript-loop-performance/),应该编写它以便只计算一次长度.

在jQuery中有一个.each,你可以坚持一个功能.我喜欢这个更好一点,因为我不需要输入两次数组,就像上面的解决方案一样.

如果JavaScript支持宏,那么推出自己的宏将是件小事,但遗憾的是它没有.

那么你们用什么?

javascript macros jquery loops

29
推荐指数
4
解决办法
2815
查看次数

是每次调用javascript str.length还是只调用一次?

哪种方式更有效?有区别吗?

这个:

var str = 'abc';

if(str.length == 20) {
    //...
}

if(str.length == 25) {
    //...
}

// and so on
Run Code Online (Sandbox Code Playgroud)

或者这一个:

var str = 'abc';
var length = str.length;

if(length == 20) {
    //...
}

if(length == 25) {
    //...
}

// and so on
Run Code Online (Sandbox Code Playgroud)

javascript

8
推荐指数
1
解决办法
448
查看次数

标签 统计

javascript ×3

loops ×2

arrays ×1

elements ×1

jquery ×1

macros ×1