总结:其核心原理在于如果 return回一个新的Promise,下一个then处理的是这个Promise,会等待这个Promise发生改变。
(function queue(args) {
args.reduce((promise, cul) => {
return promise.then((_) => {
return new Promise((resolve) => {
setTimeout(() => {
console.log(cul);
resolve();
}, 1000);
});
});
}, Promise.resolve());
})([1, 2, 3, 4, 5, 6]);
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。