不知所踪

文章 评论 浏览 32

不知所踪 2022-05-04 13:54:20
function multiRequest(urls, maxNum) {
        return new Promise((res, rej) => {
          const tasksLength = urls.length
          const result = []
          let i = 0
          let done = 0
          function runTask() {
            if(i >= tasksLength) return

            const curIndex = i
            const url = urls[curIndex]
            fetch(url).then(res => res.json()).then((value) => {
              result[curIndex] = value
              done++
              if(done === tasksLength) {
                res(result)
                return
              }
              runTask()
            }).catch(err => {
              rej(err)
            })
            i++
          }

          while(maxNum !== 0) {
            runTask()
            maxNum--
          }
        })
      }

第 153 题:实现一个批量请求函数 multiRequest(urls, maxNum)

更多

推荐作者

櫻之舞

文章 0 评论 0

弥枳

文章 0 评论 0

m2429

文章 0 评论 0

野却迷人

文章 0 评论 0

我怀念的。

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文