Promise.all 的简易版实现

2021-02-24  本文已影响0人  jluemmmm
Promise.prototype.all = function(arr) {
  let results = []
  let len = arr.length
  return new Promise(function(resolve, reject) {
    for (let i = 0; i < arr.length; i++) {
      let p = arr[i]
      Promise.resolve(p).then(function(res) {
        results[i] = res
        if(results.length === len) {
          return resolve(results)
        }
      }, function(err) {
        return reject(err)
      })
    }
  })
}
上一篇 下一篇

猜你喜欢

热点阅读