Sobes.tech
Middle

console.log('1'); setTimeout(() => console.log('2'), 0); Promise.resolve().then(() => console.log('3')); console.log('4');

sobes.tech AI

Odpověď od AI

Výstup bude:

1
4
3
2

Vysvětlení:

  • console.log('1') — synchronní volání, vypíše 1.
  • setTimeout(..., 0) — vloží funkci do fronty makro úkolů, které se provedou po aktuálním zásobníku a mikro úkolech.
  • Promise.resolve().then(...) — vloží funkci do fronty mikro úkolů, které se provedou ihned po aktuálním zásobníku, ale před makro úkoly.
  • console.log('4') — synchronní volání, vypíše 4.

Pořadí provádění:

  1. Synchronní kód: 1, 4
  2. Mikro úkoly: 3
  3. Makro úkoly: 2