JavaScript · Senior · Pytanie 1 z 75
Jak event loop przetwarza zadania w przeglądarce?
- ✓Poprawna odpowiedź: Jedno makrozadanie, potem cała kolejka mikrozadań, potem ewentualne renderowanie
- 2Wszystkie makrozadania z rzędu, potem jedno mikrozadanie, potem obowiązkowe renderowanie
- 3Mikro- i makrozadania ściśle naprzemiennie, jedno po drugim
Wyjaśnienie
Po każdym makrozadaniu (skrypt, zdarzenie, timer) kolejka mikrozadań jest opróżniana do końca, łącznie z mikrozadaniami dodanymi po drodze. Potem przeglądarka może zaktualizować renderowanie (wywołując requestAnimationFrame), jeśli przyszła pora na klatkę. Dlatego długi łańcuch mikrozadań również blokuje renderowanie.