Sobes.tech
Middle

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

sobes.tech AI

Atsakymas iš AI

Išeitis bus:

1
4
3
2

Paaiškinimas:

  • console.log('1') — sinchroninis iškvietimas, išveda 1.
  • setTimeout(..., 0) — įdedama funkcija į makro užduočių eilę, kuri bus vykdoma po dabartinio šukės ir mikro užduočių.
  • Promise.resolve().then(...) — įdedama funkcija į mikro užduočių eilę, kurios vykdomos iškart po dabartinio šukės, bet prieš makro užduotis.
  • console.log('4') — sinchroninis iškvietimas, išveda 4.

Vykdymo tvarka:

  1. Sinchroninis kodas: 1, 4
  2. Mikro užduotys: 3
  3. Makro užduotys: 2