Sobes.tech
Junior — Middle

Pode explicar o princípio de funcionamento do Event Loop em JavaScript?

sobes.tech IA

Resposta da IA

O Event Loop em JavaScript é um mecanismo que permite processar operações assíncronas sem bloquear o thread principal de execução.

Princípio de funcionamento:

  1. As chamadas de funções e o código síncrono são executados imediatamente na pilha de chamadas.
  2. Operações assíncronas (por exemplo, temporizadores, requisições de rede) são enviadas para Web APIs (navegador) ou para a API correspondente no Node.js.
  3. Quando uma operação assíncrona termina, seu callback é colocado na fila de tarefas (task queue).
  4. O Event Loop verifica constantemente a pilha de chamadas: se estiver vazia, ele pega o primeiro callback da fila de tarefas e o coloca na pilha para execução.

Dessa forma, o JavaScript permanece de thread única, mas pode lidar eficientemente com operações assíncronas sem bloquear.

Exemplo:

console.log('Início');
setTimeout(() => {
  console.log('Chamada assíncrona');
}, 0);
console.log('Fim');
// A saída será:
// Início
// Fim
// Chamada assíncrona