1 引言
本周精读的文章是 why-using-reduce-to-sequentially-resolve-promises-works,讲了如何利用 reduce 实现 Promise 串行执行。
在 async/await 以前 Promise 串行执行还是比较麻烦的,希望根据这篇文章可以理清楚串行 Promise 的思维脉络。
2 概述
除了依赖 async promise-fun 等工具库,最常用的队列操作就是 Array.prototype.reduce()
了:
最后一个值 0 是起始值,每次 reduce 返回的值都会作为下次 reduce 回调函数的第一个参数,直到队列循环完毕,因此可以进行累加计算。
那么将 reduce
的特性用在 Promise 试试:
当上一个 Promise 开始执行(previousPromis