var list=[1,2,3,4,5,6]; // 第一种 co(function *(){ var arr=[]; for(var i in list){ arr.push(yield getlist(list[i]) )); } return arr; }).then(function (total){ res.send(total); }, function (err){ next(err); }); //第二种 co(function *(){ var arr=[]; for(var i in list){ arr.push( getlist(list[i]) ); } var all = yield arr; return all; }).then(function (total){ res.send(total); }, function (err){ next(err); });
不知道上面两种写法哪个是异步,哪个是同步,只从返回结果上面看,两个竟然一模一样。