¿Por qué JavaScript no ejecuta tu código en orden? 🤯
¿Por qué JavaScript no ejecuta tu código en orden? 🤯
¿Alguna vez escribiste tres líneas de código, las ejecutaste y el resultado apareció en un orden completamente inesperado? No estás loco, es el Event Loop en acción. JavaScript funciona con un solo hilo de ejecución, pero tiene un sistema inteligente para manejar tareas: el Call Stack, la Task Queue y la Microtask Queue. Las Promesas siempre tienen prioridad sobre los setTimeout, sin importar el tiempo que les pongas. Entender cómo el navegador realmente ejecuta tu código es lo que separa a alguien que programa por suerte de alguien que programa con control total.
Transcript
Escribes tres líneas de código, las ejecutas, y el orden de salida no tiene ningún sentido. ¿Por qué? JavaScript tiene un solo hilo, como una caja registradora con un único cajero. Ese cajero es el Call Stack, donde el código corre línea por línea. Mira este ejemplo: console.log de "Tarea 1", un setTimeout con cero milisegundos para "Tarea 2", dos Promises para "Microtarea 1" y "Microtarea 2", y console.log de "Tarea 3". El navegador lo ejecuta así: "Tarea 1" entra al Call Stack y se imprime. El setTimeout manda "Tarea 2" a la Task Queue, sala de espera. Las Promises van a la Microtask Queue, fila VIP. "Tarea 3" se imprime. El cajero queda libre. Ahí actúa el Event Loop: primero vacía la fila VIP, "Microtarea 1" y "Microtarea 2", y solo entonces atiende "Tarea 2". Cero milisegundos no significa inmediato. Las microtareas siempre ganan, sin excepción. Entender el Event Loop es la diferencia entre código que funciona por casualidad y código que tú controlas.
Want a video like this?
Give Ankon a topic — it writes, draws, and narrates a whiteboard explainer in minutes.
More Spanish whiteboard explainers
¿Estás preparando el biberón de tu bebé de forma segura? Esto debes saber
by proudsable316
Cómo identificar tus competencias emocionales (y por qué cuesta)
by silversummit151
Sueltas un CFDI aquí.
by merryotter832
La evolución de los sistemas numéricos Los números han acompañado a la humanidad desde su
by zestyecho314
Por qué destruyes músculo para hacerlo crecer
by rapidwave895
¿Quiénes son realmente los hebreos según la Biblia?
by swiftzephyr266