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 })