Как замедлить цикл в 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: