迭代器函数的定义迭代器需要返回一个对象。这个对象需要有一个next方法。调用next方法后,它可以返回一个带有两个参数的对象。第一个完成的值是迭代的结果function*a(){letx=yield100;console.log('x',x);让y=产量200;控制台日志(y);让z=产量300;returnz}//letflag=false;//do{//let{done,value}=it.next();//console.log(value);//flag=done;//}while(!flag);coletfs=require('mz/fs');//letco=require('co');//generator=>async+awaitfunction*read(){//可以暂停和支持promiseletage=yieldfs.readFile('./name.txt','utf8');letaddress=yieldfs.readFile(age,'utf8');让r=yieldfs.readFile(address,'utf8');returnr;}functionco(it){returnnewPromise((resolve,reject)=>{//如何实现异步线性执行koaexpressfunctionnext(data){let{value,done}=it.next(data);if(!done){value.then(data=>{next(data)},reject);}else{resolve(value);}}next();})}co(read()).then(数据=>{console.log(data);},err=>{console.log(err);});//letit=read();//it.next().value.then(data=>{//it.next(data).value.then(data=>{//it.next(data).value.then(data=>{//console.log(it.next(data).value);//})//})//})
