var i = 0; i++; function ajax(url){ return new Promise(function(resolve, reject){ setTimeout(function(){ console.log(url); resolve({url: url + i++}); }, 200); }); } function *gen(url){ var data = yield ajax(url); data = yield ajax(data.url); data = y…