setTimeout内需要放一个请求,如何让下次执行的时候是确保之前是有返回结果的
var array=[];
function output(j) {
return new Promise( function(resolve, reject) {
setTimeout(function () {
console.log('这里请求开始',j)
return resolve(j);
},1000 * j);
}).then(function (res) {
return Promise.resolve(res)
});
}
for (var i=0;i<5;i++){
array.push(output(i));
}
Promise.all(array).then(function (res) {
console.log('res',res);
你的意思是 前一个
promise
完成才调用下一个?你这里 都已经 全部一起调用了
顺序执行可以用
reduce