JavaScript · Junior · Pytanie 32 z 75

W jakiej kolejności zostaną wypisane liczby?

console.log(1);
setTimeout(() => console.log(2), 0);
Promise.resolve().then(() => console.log(3));
console.log(4);

Wyjaśnienie

Najpierw wykonuje się kod synchroniczny (1, 4). Potem event loop wykonuje wszystkie mikrozadania - callbacki promise'ów (3) - a dopiero potem kolejne makrozadanie - timer (2). setTimeout(fn, 0) nie oznacza „natychmiast”.

Do poczytania

Błąd w pytaniu

JavaScript · Junior · pytanie 32

Sprawdź się

Rozwiąż test JavaScript · Junior: pytania i odpowiedzi są tasowane, a na końcu czeka przegląd błędów.

Rozwiąż ten test