Event Loop
¿Qué es el Event Loop?
El Event Loop es el mecanismo que coordina la ejecución de tareas en JavaScript, permitiendo manejar operaciones asíncronas como timers, eventos del DOM, promesas o peticiones de red sin bloquear el flujo principal.
JavaScript funciona normalmente con un solo hilo de ejecución, y el Event Loop ayuda a decidir qué tarea se ejecuta y en qué momento.
¿Para qué sirve el Event Loop?
El Event Loop permite:
- Ejecutar código síncrono y asíncrono de forma ordenada.
- Atender eventos del usuario sin congelar la interfaz.
- Procesar callbacks, microtasks y tareas pendientes.
- Hacer posible el comportamiento no bloqueante de JavaScript.
Ejemplo básico
console.log('Inicio');
setTimeout(() => {
console.log('Timeout');
}, 0);
Promise.resolve().then(() => {
console.log('Promesa');
});
console.log('Fin');
El resultado no será el orden visual del archivo, sino:
// Inicio
// Fin
// Promesa
// Timeout
Características del Event Loop
- Trabaja junto al call stack y la cola de tareas.
- Da prioridad a las microtasks como las promesas.
- Permite que JavaScript siga respondiendo mientras espera operaciones externas.
- Es clave para entender la asincronía en frontend y backend.
¿Dónde se usa?
- En el navegador, al gestionar eventos, timers y rendering.
- En Node.js, al manejar I/O, servidores y operaciones asíncronas.
- En aplicaciones con promesas,
async/awaity eventos.
Conclusión
El Event Loop es una pieza central del funcionamiento de JavaScript. Comprenderlo te ayuda a entender el orden real de ejecución del código, evitar errores de asincronía y escribir aplicaciones más predecibles.