Middle
console.log('1'); setTimeout(() => console.log('2'), 0); Promise.resolve().then(() => console.log('3')); console.log('4');
sobes.tech AI
Risposta dell'AI
L'output sarà:
1
4
3
2
Spiegazione:
console.log('1')— chiamata sincrona, stampa1.setTimeout(..., 0)— mette la funzione in coda alle macro-task, che verrà eseguita dopo lo stack corrente e le micro-task.Promise.resolve().then(...)— mette la funzione in coda alle micro-task, che vengono eseguite subito dopo lo stack corrente, ma prima delle macro-task.console.log('4')— chiamata sincrona, stampa4.
Ordine di esecuzione:
- Codice sincrono:
1,4 - Micro-task:
3 - Macro-task:
2