promise.all()方法接受一个promise的iterable类型的输入并且只返回一个Promise实例
也就是将多个promise实例变成一个新的promise实例
function PromiseAll(lists){
return new Promise((resolve,reject) => {
let PromiseRes = [];
//接收promise实例的数量
let num = 0;
//遍历lists中的实例对象
lists.forEach(item){
Promise.resolve(item).then(res => {
promiseres.push(res);
num++;
if(num === PromiseRes.length){
resolve(PromiseRes)
}
}).catch(err=>{
reject(err)
})
}
//如果接收为空
if(num === 0){
resolve(PromiseRes)
}
})
}
文章为个人学习产物,仅供参考,借鉴全网文献学习