Logo

Loop in JavaScript verlangsamen

Wie du in JavaScript einen Loop langsamer laufen lässt.

20. Mai 2020

Du musst eine API 500 mal requesten, kriegst aber Status 429 zurück wegen zu vieler Requests in zu kurzer Zeit? Was auch immer deine Gründe sind, einen Loop langsamer laufen zu lassen ist ganz simpel:

const wait = (ms) => {
  return new Promise((resolve) => setTimeout(resolve, ms));
};

Wir erstellen eine wait Funktion, welche ein Promise returned, welches nach X Millisekunden resolved wird. Jetzt können wir einfach mit await wait(1000) eine Sekunde warten bevor es weiter geht:

const ids = [1, 2, 3, 4, 5, 6];

const getPosts = async () => {
  for (const id of ids) {
    console.log(id);
    await wait(1000);
  }
};

getPosts();
« Alle Beiträge