// add 异步相加
function add(a, b) {
return new Promise((resolve, reject) => {
setTimeout(()...,每个任务执行一部分,传入concurrency 代表将数组以几个分一组,剩余不够的成一组
function sumPoll(arr, add, concurrency = Infinity) {...chunks.push(arr.splice(0, len));
}
// console.log("chunks", chunks);
// 分组之后每一组算一个异步任务开始执行...,tasks 为异步任务列表
const tasks = [];
for (const chunk of chunks) {
// 每一个 task 中的数组单独进行计算...sumPoll([1, 2, 3, 4, 5, 6, 7, 8, 9, , 10], add, 3).then((result) =>
console.log(result)
);
参考代码