Promise.all(iterable) 方法返回一个 Promise 实例,此实例在 iterable 参数内所有的 promise
都“完成(resolved)”或参数中不包含 promise 时回调完成(resolve);如果参数中 promise
有一个失败(rejected),此实例回调失败(reject),失败原因的是第一个失败 promise 的结果。
// 手写Promise.all() Promise.property.all = function (iterators) { const
promises = Array.from(iterators); const len = promises.length; let count = 0;
let resultList = []; return new Promise((resolve,reject)=>{
promises.forEach((p,index) =>{ Promise.resolve(p) .then((result)=>{ count++;
resultList[index] = result; if(count === len){ resolve(resultList); } })
.catch(e=>{ reject(e); }) }) }) }
 

技术
今日推荐
下载桌面版
GitHub
百度网盘(提取码:draw)
Gitee
云服务器优惠
阿里云优惠券
腾讯云优惠券
华为云优惠券
站点信息
问题反馈
邮箱:[email protected]
QQ群:766591547
关注微信