关注
function multiRequest(urls, max) {
return new Promise((resolve, reject) => {
const requestRes = {}
const len = urls.length //总大小
let finshedCount = 0 //已完成
let running = 0 // 正在请求中
let index = 0
function addQueue() {
index++
running += 1
fetch(urls[index]).then(res => {
requestRes[index - max] = res
}).catch(err => {
requestRes[index - max] = err
}).finally(() => {
running -= 1
finshedCount += 1
if (running < max && finshedCount < len) {
addQueue()
}
if (finshedCount == len) {
resolve(Array.from({ ...requestRes, length: len }))
}
})
if (running < max && finshedCount < len) {
addQueue()
}
}
addQueue()
})
}
查看原帖
点赞 评论
相关推荐
投递英伟达等公司7个岗位 >
点赞 评论 收藏
转发
点赞 评论 收藏
转发
牛客热帖
正在热议
# 牛客帮帮团来啦!有问必答 #
362714次浏览 7414人参与
# 晒一晒我的offer #
2776654次浏览 49561人参与
# 非技术岗薪资爆料 #
5622次浏览 122人参与
# 华为求职进展汇总 #
434919次浏览 4369人参与
# 第一次面试 #
14355次浏览 226人参与
# 你更愿意参加线上面试还是线下面试? #
5422次浏览 77人参与
# 除了offer,现在你还缺点啥? #
2264次浏览 47人参与
# 机械人怎么评价今年的华为 #
50526次浏览 413人参与
# 找工作,你会甘心进小厂还是猛冲大厂 #
22317次浏览 214人参与
# 来聊聊机械薪资天花板是哪家 #
19152次浏览 151人参与
# 如何确定求职岗位 #
101410次浏览 2403人参与
# 应届生应该先就业还是先择业 #
11016次浏览 108人参与
# 通信硬件薪资爆料 #
139623次浏览 1016人参与
# 百度工作体验 #
19067次浏览 208人参与
# 应届生初入职场,求建议 #
21321次浏览 528人参与
# 海信求职进展汇总 #
6837次浏览 91人参与
# 租房前辈的忠告 #
19951次浏览 1586人参与
# 实习工作,你找得还顺利吗? #
5155次浏览 79人参与
# 如果再来一次,你还会学硬件吗 #
16904次浏览 332人参与
# 为什么那么多公司毁约 #
32179次浏览 268人参与