Javascript Entry() 不返回任何内容

标签 javascript enumerate

我想获取数组元素及其索引,我使用如下的entries(),但它不会打印出任何内容,也不会给出任何错误。

var array1 = ['a', 'b', 'c'];

var iterator1 = array1.entries();

for ([k, v] in iterator1) {
  console.log(k, v)
}

最佳答案

您应该使用for of而不是for in

var array1 = ['a', 'b', 'c'];
var iterator1 = array1.entries();

for ([k, v] of iterator1) {
  console.log(k, v)
}


另一种方法是使用迭代器done属性和next方法

var array1 = ['a', 'b', 'c'];
var iterator1 = array1.entries();
let result = iterator1.next()

while (!result.done) {
  let [k, v] = result.value
  console.log(k, v)
  result = iterator1.next()
}

关于Javascript Entry() 不返回任何内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57644893/

相关文章:

c# - 获取 IEnumerable 的第一项并将其余项作为 IEnumerable 返回,仅迭代一次

vb6 - VB 6 如何使自定义集合类支持 For Each

python - 在带有嵌套 enumerate() 的 for 循环中添加第二个参数有什么作用?

Python:如何将数字映射到列中的唯一项目(枚举唯一对象)?

Javascript - 范围问题和将参数传递给动态创建的事件处理程序

javascript - PhantomJS/CasperJS AssertExists() 失败

javascript - jQuery 事件冒泡,live(),点击事件不传播

javascript - ASP.NET 部分回发上的 Chrome 自动填充(更新面板)

javascript - mongoDB 插入和处理.nextTick

arrays - 迭代两个数组以在 Ruby 中生成哈希