generator实现伪同步
Posted yzd
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了generator实现伪同步相关的知识,希望对你有一定的参考价值。
1 var getFun=function(value){ 2 return function(callback){ 3 setTimeout(function(){ 4 callback(value); 5 },1000); 6 }; 7 } 8 9 ;+function(gen){ 10 var next=gen(); 11 function nextyield(result){ 12 var item=next.next(result),value; 13 if(item.done) return; 14 value=item.value; 15 //console.log(typeof value); 16 if(typeof value=="function"){ 17 value(nextyield); 18 return; 19 } 20 nextyield(value); 21 } 22 nextyield(); 23 24 }(function *(){ 25 26 var a=yield getFun(10); 27 console.log(a); 28 var b=yield 3; 29 var c=yield 2; 30 var d=yield getFun(15) 31 console.log(d); 32 console.log(a+b+c+d); 33 })
以上是关于generator实现伪同步的主要内容,如果未能解决你的问题,请参考以下文章
chapter15中使用generator来实现异步化操作的同步化表达的例子
mvn命令异常:An error has occurred in Javadoc report generation: Unable to find javadoc command异常已解决(代码片段
mvn命令异常:An error has occurred in Javadoc report generation: Unable to find javadoc command异常已解决(代码片段
[React Testing] Use Generated Data in Tests with tests-data-bot to Improve Test Maintainability(代码片段