两个数组迭代之间的区别

ric*_*hie 4 javascript for-loop

我只是想知道这些数组迭代之间的区别,以及为什么第二个似乎真的很少使用,它有什么问题呢?

var items = [ /*...*/ ]
for (var i = 0; i < items.length; i++) {
    var item = items[i];
    // Do some stuff with the item
}
Run Code Online (Sandbox Code Playgroud)

第二种方式:

var items = [ /*...*/ ]
for (var i, item; item = items[i]; i++) {
    // Do some stuff with the item
}
Run Code Online (Sandbox Code Playgroud)

nne*_*neo 9

第一个保证始终遍历每个元素.

如果它遇到一些类似虚假的元素,例如0,则第二个将停止.

  • Felix是正确的,但是,数组可能有未定义的值,这可能有用 (3认同)