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
1und4ausgegeben. - 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.