for..in 循环数组需注意

图片
通常使用for..in遍历对象,如果用它来遍历数组,需要注意的是:拿到的索引不再是数字。这正是第2个循环里的 continue 不会执行的原因。

var arr = [1, 2, 3, 4, 5]
//循环1
for (var key = 0; key < 5; key++) {
    if (key === 3) {
        console.log('跳过一次循环');
        continue;
    }
    console.log(key, '->', arr[key])
}
console.log('\n')

//循环2
for (var key in arr) {
    if (key === 3) {
        console.log('跳过一次循环');
        continue;
    }
    console.log(key, '->', arr[key])
}
console.log('\n')

//循环3
for (var key in arr) {
    if (key === '3') {
        console.log('跳过一次循环');
        continue;
    }
    console.log(key, '->', arr[key])
}
console.log('\n')
本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!
未填写
文章
63
粉丝
17
喜欢
140
收藏
118
排名:132
访问:7.4 万
私信
所有博文
社区赞助商