首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >访问for-of循环中的ES6数组元素索引

访问for-of循环中的ES6数组元素索引
EN

Stack Overflow用户
提问于 2015-12-18 13:15:28
回答 9查看 232.8K关注 0票数 325

我们可以使用for-of循环访问数组元素:

代码语言:javascript
运行
复制
for (const j of [1, 2, 3, 4, 5]) {
  console.log(j);
}

我如何修改这段代码来访问当前的索引?我希望使用for-of语法来实现这一点,而不是使用forEach或for-in。

EN

回答 9

Stack Overflow用户

回答已采纳

发布于 2015-12-18 13:30:56

使用Array.prototype.keys

代码语言:javascript
运行
复制
for (const index of [1, 2, 3, 4, 5].keys()) {
  console.log(index);
}

如果要同时访问键和值,则可以结合使用Array.prototype.entries()destructuring

代码语言:javascript
运行
复制
for (const [index, value] of [1, 2, 3, 4, 5].entries()) {
  console.log(index, value);
}

票数 492
EN

Stack Overflow用户

发布于 2015-12-18 14:33:21

如果需要索引和值,Array#entries会返回这两个值:

代码语言:javascript
运行
复制
for (let [index, value] of array.entries()) {

}
票数 347
EN

Stack Overflow用户

发布于 2018-09-26 08:24:23

在这个华而不实的新原生函数的世界里,我们有时会忘记基础知识。

代码语言:javascript
运行
复制
for (let i = 0; i < arr.length; i++) {
    console.log('index:', i, 'element:', arr[i]);
}

干净,高效,你仍然可以break循环。奖金!您还可以使用i--从头开始并向后返回!

附加说明:如果您在循环中经常使用该值,您可能希望在循环的顶部执行const value = arr[i];,以获得简单、可读的参考。

票数 80
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34348937

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档