问答题1015/1588使用Promise实现每隔1秒输出1,2,3

难度:
2021-08-11 创建

参考答案:

这道题比较简单的一种做法是可以用Promise配合着reduce不停的在promise后面叠加.then,请看下面的代码:

1const arr = [1, 2, 3] 2arr.reduce((p, x) => { 3 return p.then(() => { 4 return new Promise(r => { 5 setTimeout(() => r(console.log(x)), 1000) 6 }) 7 }) 8}, Promise.resolve())

还可以更简单一点写:

1const arr = [1, 2, 3] 2arr.reduce((p, x) => p.then(() => new Promise(r => setTimeout(() => r(console.log(x)), 1000))), Promise.resolve())

最近更新时间:2024-07-20

赞赏支持

预览

题库维护不易,您的支持就是我们最大的动力!