Sobes.tech
Middle

In welcher Reihenfolge werden die Zahlen im Code mit Promise, setTimeout und synchronem Code (Event Loop) ausgegeben?

sobes.tech KI

Antwort von AI

In JavaScript wird die Ausführungsreihenfolge von Code mit Promise, setTimeout und synchronem Code durch die Event Loop und die Warteschlangen für Microtasks (Microtasks) und Macrotasks (Macrotasks) bestimmt.

Betrachten wir ein Beispiel:

console.log('1');

setTimeout(() => {
  console.log('2');
}, 0);

Promise.resolve().then(() => {
  console.log('3');
});

console.log('4');

Erläuterung:

  • Zuerst wird der gesamte synchrone Code ausgeführt, daher werden 1 und 4 ausgegeben.
  • Dann werden die Microtasks (Promise) ausgeführt, Ausgabe 3.
  • Danach werden die Macrotasks (setTimeout) ausgeführt, Ausgabe 2.

Endgültige Ausgabe-Reihenfolge: 1, 4, 3, 2.

Daher wird synchroner Code zuerst ausgeführt, gefolgt von Microtasks (Promise), dann Macrotasks (setTimeout). Dies ist ein Schlüsselaspekt zum Verständnis des Event Loop in JavaScript.