Sobes.tech
Middle

Какво ще се покаже в конзолата и защо?

sobes.tech AI

Отговор от AI

В конзолата ще се изведе в следния ред:

a
c
b

Обяснение:

  • a() — синхронна функция, която веднага извежда 'a'.
  • b() — извиква setTimeout с 0 закъснение, което поставя callback-а в опашката на макротасковете, които ще се изпълнят след всички микротаскове и текущия стек.
  • c() — създава промис, който се резолвира веднага, и неговият .then поставя callback-а в опашката на микротасковете.

Цикълът на събитията на JavaScript първо изпълнява всички синхронни операции, след това микротасковете (промисите), и накрая макротасковете (setTimeout). Затова първо ще се покаже 'a', после 'c', и накрая 'b'.