以前一直用forEach (不能终止循环),some every for in 等,现在出来for of,挺好用break终止循环
可以编辑map,For of可以迭代的都是原型上有iterator方法
done表示迭代是否结束
实现对象的可迭代Iterable

迭代器列子
Generator 生成器
-
避免异步编程中回调嵌套过深
-
function关键字与函数名之间有一个号。
-
函数体内部使用yield表达式,定义不同的内部状态(yield在英语里的意思就是“产出”)
-
执行Generator函数生成一个遍历器对象,用该对象调用其next()方法来遍历函数内部的状态

function* generator(txt) {
console.log(txt); // 2 第一次调用生成迭代对象,传参
let result01 = yield '停止';
console.log(result01); // 4 传参替换yield;
}
let g = generator('第一次调用生成迭代对象,传参');
console.log('主线程'); // 1
let step01 = g.next();
console.log(step01.value);// 3 停止
g.next('传参替换yield');
console.log('结束~'); // 5


