JavaScript For-each / For-in循环更改元素类型[重复]

||                                                                                                                   这个问题已经在这里有了答案:                                                      
已邀请:
我认为您误解了JavaScript
for...in
的作用。它不会遍历数组元素。遍历对象属性。 JavaScript中的对象类似于其他语言中的字典或哈希,但由字符串作为键。尤其是将数组实现为对象,这些对象的属性是从
0
N-1
的整数-但是,由于所有属性名称都是字符串,因此索引也是如此。 现在让我们举一个与
[0]
不同的例子,因为这里的索引与值一致。让我们讨论
[2]
。 因此,如果忽略从from6ѭ继承的内容,则
[2]
{ \"0\": 2 }
几乎相同。
for..in
将遍历属性名称,它将选择
\"0\"
,而不是
2
。 现在,您问如何迭代6 s?通常的方法是:
var arrayLen = array.length;
for (var i = 0; i < arrayLen; i++) {
  var el = array[i];
  // ...
}
    
这是为什么在数组迭代中使用“ for ... in”是个坏主意的重复。     
for-in
语句枚举对象的属性。在您的情况下,
element
是属性的名称,并且始终是字符串。     

要回复问题请先登录注册