Skip to content

实现一个 Promise.race

js
Promise.race = function (promises) {
  return new Promise((resolve, reject) => {
    let len = promises.length
    if (len === 0) return
    for (let i = 0; i < len; i++) {
      Promise.resolve(
        promises[i]
          .then((data) => {
            resolve(data)
            return
          })
          .catch((err) => {
            reject(err)
            return
          }),
      )
    }
  })
}

如有转载或 CV 的请标注本站原文地址