- 和 ES6 迭代器一样
-
for...of
可以查看:
- ECMAScript 当中的76-JavaScript-数组高级API
- JS新特性 + 流行框架 当中的 Iterator 接口、Iterator 接口应用场景
let someArray = [1, "string", false];
for (let entry of someArray) {
console.log(entry);
}
生成器
- 当生成目标为 ES5 或 ES3,迭代器只允许在 Array 类型上使用
- 在非数组值上使用
for...of
语句会得到一个错误 - 就算这些非数组值已经实现了
Symbol.iterator
属性 - 为了解决这个问题, 编译器会生成一个简单的 for 循环做为
for...of
循环