接收一组异步任务,并按照顺序依次执行,确保前一个任务完成后再执行下一个任务。
关键点:使用 reduce
方法和 Promise
的链式调用来实现异步任务的串行执行和结果的累加。
function series(tasks) {
return tasks.reduce((promiseChain, currentTask) => {
return promiseChain.then((result) => {
return currentTask().then((currentResult) => {
return result.concat(currentResult);
});
});
}, Promise.resolve([]));
}
© 版权声明
文章版权归作者所有,未经允许请勿转载,侵权请联系 admin@trc20.tw 删除。
THE END