Promiseall和Promiserace实现

Promise.all=(proArr) =>{
    return new Promise((resolve, reject) => {
        let retsult = []
        let count = 0
        for (let i = 0; i < proArr.length; i++) {
            proArr[i].then(data => {
                retsult[i]=data
                if(++count===proArr.length){
                    resolve(retsult)
                }
            }, reject)
        }
    })
}
Promise.race=(promiseAry)=> {
    return new Promise((resolve, reject) => {
      for (let i = 0; i < promiseAry.length; i++) {
        promiseAry[i].then(resolve, reject)
      }
    })
  }

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理