JavaScript · Senior · Pytanie 59 z 75

Dlaczego ten kod może zamrozić stronę, choć używa promise'ów?

function loop() { Promise.resolve().then(loop); }
loop();

Wyjaśnienie

Przeglądarka renderuje tylko między makrozadaniami, po opróżnieniu kolejki mikrozadań. Użyj setTimeout, MessageChannel lub scheduler.yield(), by dać szansę renderowaniu.

Do poczytania

Błąd w pytaniu

JavaScript · Senior · pytanie 59

Sprawdź się

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

Rozwiąż ten test