如何减慢JavaScript中的循环

我有一个循环,我想多次调用API,例如500次。

API实现了速率限制,即使没有限制,在很短的时间内发出如此多的请求也是不友好的。

所以我想放慢循环。如何?

事实证明,设置了sleep()函数后,您无需更改就非常简单了:

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

那你可以打电话await sleep(1000)在每次迭代中停止1秒钟,如下所示:

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

doSomething()

免费下载我的JavaScript初学者手册


更多js教程: