0%

Async await 实现 sleep

有时候经常会用到一个暂停的方法, 随着 nodejs 版本从 v7 以后,已经可以很方便的用原生的 async await 来实现了

1
2
3
4
5
6
7
8
9
10
11
12
13
const sleep = (timeout = 3000) => {
console.log('休眠', timeout, 'ms')
return new Promise((resolve, reject) => setTimeout(() => {
resolve()
}, timeout))
}

(async () => {
for (let i = 0; i < 10; i ++) {
console.log(i)
await sleep()
}
})

比使用 Promise 又简洁了一番