Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

341
Vistas
javascript setTimeout() y usar for loop after y consumir el valor del bucle for en setTimeout()

Mi pregunta es una variante de esta pregunta: setTimeout se ejecuta después de bucle en javascript

El código:

 let i = 0; setTimeout(() => alert(i), 100); // ? // assume that the time to execute this function is >100ms for(let j = 0; j < 100000000; j++) { i++; }

La salida:

 100000000

Mi pregunta: sé que cuando usamos setTimeout con un retraso de 100, la API WEB setTimeout() se moverá a la queue del eventloop de eventos y luego entrará en la call stack si está vacía y disponible. Podemos ver que este setTimeout comenzará después de 100ms , así que pensé que tal vez el i value sería algo así como 4000+ o algo así. pero desafortunadamente (con este gran ciclo que toma como 5+- segundos, es decir 5000ms) la función setTimeout se ejecutará justo después de que finalice el for loop . pero el demonio de bucle de eventos se está ejecutando y está listo para aceptar la setTimeout callback porque la call stack está vacía. Sé que el concepto de concurrencia de JS es diferente de los lenguajes como JAVA&C++, etc... que no hay programador para el tiempo de la CPU porque es un lenguaje de subprocesos, pero supongo que el event loop funciona como el OS daemon y está listo para aceptar el message from the queue incluso si la CPU está ocupada con el for loop . Entonces, ¿la razón por la que sucede es porque la CPU está ocupada y no puede ejecutar el eventloop de eventos? o hay otra razón? ¡Gracias chicos!

about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda