Sobes.tech
Middle

Ce va fi afișat în consolă și de ce?

sobes.tech AI

Răspuns de la AI

În consola va fi afișat în următoarea ordine:

a
c
b

Explicație:

  • a() — funcție sincronă, afișează imediat 'a'.
  • b() — apelează setTimeout cu întârziere de 0, ceea ce plasează callback-ul în coada de macro-tasks, care va fi executată după toate micro-tasks și stack-ul curent.
  • c() — creează o promisiune care se rezolvă imediat, iar .then-ul său plasează callback-ul în coada de micro-tasks.

Ciclul de evenimente JavaScript execută mai întâi toate operațiunile sincronice, apoi micro-tasks (promises), și doar apoi macro-tasks (setTimeout). De aceea, ordinea va fi mai întâi 'a', apoi 'c', și în final 'b'.