a = [1, 2];
for (item of a) {}
类似于此for
循环:
for (let index = 0; index < a.length; index++) {
let item = a[index]
}
我注意到您也可以在continue
中使用break
和for...of
。
我认为我更喜欢使用常规的for
循环-感觉我有更多的控制权。
答案 0 :(得分:0)
是的,假设a
是标准数组,它在功能上是相同的。
我认为我更喜欢使用常规的
for
循环-感觉我有更多的控制权。
在编写第100个for
循环后,您将不再有这种感觉,意识到只需要在其中1%的情况下进行额外的控制,而在99%的情况下就不需要冗长的代码,而在10%的情况下则需要怪异的错误他们。
Array#forEach
是另一个不错的选择。通常,您真正想要的是Array#map
(如果您想以某种方式转换数组的每个项目)。
答案 1 :(得分:0)
for
用于具有[]运算符的对象。 for..of
用于可迭代对象。一些对象可以迭代,并具有[]运算符,例如Arrays。
let myIterable = {};
myIterable[Symbol.iterator] = function* () {
yield 1;
yield 2;
yield 3;
};
for(x of myIterable) {
console.log(x)
}