function* books(){
yield "javascript";
yield "html5"
};
let mybook = books();
console.log(mybook.next());//{value: "javascript", done: false}
console.log(mybook.next());//{value: "html5", done: false}
console.log(mybook.next());//{value: undefined, done: true}
所谓的迭代器其实就是一个function,每一项用yield定义。迭代器有next()方法,会返回一个对象,对象包括2个属性value和done.
迭代器执行一次就会返回下一个yield声明的值,如果没有下一个 done的属性值就会被置为true