Javascript for…of循环与这个常规循环相同吗?

Javascript for…of循环与这个常规循环相同吗?,javascript,Javascript,a=[1,2] (a){}的类似于循环的: for(让index=0;index

a=[1,2]

(a){}
类似于
循环的

for(让index=0;index
我注意到您也可以在
中使用
continue
break
,用于…of


我想我更喜欢使用常规的
for
循环-感觉我有更多的控制权。

是的,假设
a
是一个标准数组,它的功能是相同的

我想我更喜欢使用常规的
for
循环-感觉我有更多的控制权

在编写第100个
for
循环后,您将不再有这种感觉,因为您意识到,在这些情况中,只有1%的情况下需要额外的控制,99%的情况下需要不必要的冗长,10%的情况下需要奇怪的bug


Array#forEach
是另一个不错的选择。通常,您真正想要的是
Array#map
(如果您想以某种方式变换数组的每个项)。

for
是for objects have[]操作符
for..of
用于可编辑对象。有些对象可以是可编辑的,并且具有类似[]运算符的数组

let myIterable={};
myIterable[Symbol.iterator]=函数*(){
产量1;
产量2;
产量3;
};
对于(myIterable的x){
console.log(x)

}
所以。。。不完全一样,不,不一样。它使用不同的机制进行迭代,调用
a[Symbol.Iterator]
,这是一种非常不同的机制。例如,迭代器不是通过索引访问的,因此不必具有已知的大小,甚至不必是有限的。