/

如何在JavaScript中減慢一個循環的速度

如何在JavaScript中減慢一個循環的速度

我有一個循環,在該循環中我想要調用一個API多次,例如500次。

API實現了速率限制,即使沒有實現,很快地發送這麼多請求也是不友善的。

所以我想要減慢循環的速度。那該怎麼做?

事實上,這是相當簡單的,一旦你設置了一個sleep()函數,你就不需要進行更改:

1
2
3
const sleep = (milliseconds) => {
return new Promise(resolve => setTimeout(resolve, milliseconds))
}

然後你可以在每次迭代中調用await sleep(1000)來暫停1秒,像這樣:

1
2
3
4
5
6
7
8
9
const list = [1, 2, 3, 4]
const doSomething = async () => {
for (const item of list) {
await sleep(1000)
console.log('🦄')
}
}

doSomething()

tags: [“JavaScript”, “循環”, “減慢速度”, “API”, “sleep函数”]