Sobes.tech
Middle

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

sobes.tech IA

Resposta da IA

A saída será:

1
4
3
2

Explicação:

  • console.log('1') — chamada síncrona, imprime 1.
  • setTimeout(..., 0) — coloca a função na fila de tarefas macro, que será executada após a pilha atual e as microtarefas.
  • Promise.resolve().then(...) — coloca a função na fila de microtarefas, que são executadas imediatamente após a pilha atual, mas antes das tarefas macro.
  • console.log('4') — chamada síncrona, imprime 4.

Ordem de execução:

  1. Código síncrono: 1, 4
  2. Microtarefas: 3
  3. Tarefas macro: 2