Sobes.tech
Middle

Kas bus parodyta konsolėje ir kodėl?

sobes.tech AI

Atsakymas iš AI

Konsolėje bus parodyta tokia tvarka:

a
c
b

Paaiškinimas:

  • a() — sinchroninė funkcija, iškart išveda 'a'.
  • b() — iškviečia setTimeout su 0 vėlavimu, kas įdeda callback į makrotaskų eilę, kuri bus vykdoma po visų mikrotaskų ir dabartinio šako.
  • c() — sukuria pažadą, kuris iškart išsprendžiamas, ir jo .then įdeda callback į mikrotaskų eilę.

JavaScript įvykio ciklas pirmiausia vykdo visas sinchronines operacijas, tada mikro užduotis (promises), ir tik po to makro užduotis (setTimeout). Todėl pirmiausia pasirodys 'a', tada 'c', ir galiausiai 'b'.