991
1、不断调用generator对象的next()方法,执行generator代码,然后,每次遇到yieldx;返回一个对象,然后暂停。
varf=fib(5); f.next();//{value:0,done:false f.next();//{value:1,done:false f.next();//{value:1,done:false f.next();//{value:2,done:false f.next();//{value:3,done:false f.next();//{value:undefined,done:true
2、直接用for...of循环迭代generator对象,不需要自己判断done。
function*fib(max){ vart, a=0,b=1,n=0; while(n<max){ yielda; [a,b]=[b,a+b]; n++; return; for(varxoffib(10)){ console.log(x);//依次输出0,1,1,2,3,...
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)