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

308
Vistas
¿Cuál es el orden de ejecución/flujo de control de "esperar" en javascript?

Tengo este fragmento de código y me cuesta entender por qué el orden de registro es "1,3,2".

 (async () => { const doSomething = async () => { console.log("1"); }; await doSomething(); console.log("2"); })(); console.log("3");

Async/await se implementa bajo el capó con promesas. Con las promesas, incluso si una promesa se resuelve inmediatamente, la devolución de llamada dentro del luego se agrega como una microtarea y la ejecución actual de la pila de llamadas continúa. Luego, una vez que se completa la pila de llamadas, se ejecutan las microtareas.

Entonces, de la forma en que leo el código, la palabra clave await antes de la función doSomething() significa que el resto del código en la función después de await se envolverá en una llamada, devolviendo el control a la persona que llama a la función. Por lo tanto, "3" debe registrarse primero, ¿entonces el orden debe ser "3,1,2"?

¿Qué es el flujo de control? ¿Qué sucede realmente cuando el traductor de JavaScript encuentra una palabra clave en espera ?

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

la palabra clave await antes de la función doSomething() significa que el resto del código en la función después de await se envolverá en una llamada then , devolviendo el control a la persona que llama a la función.

Sí:

 (() => { const doSomething = () => { console.log("1"); return Promise.resolve(); }; return doSomething().then(() => { console.log("2"); }); })(); console.log("3");

Por lo tanto, "3" debe registrarse primero

No. El registro "1" no se retrasa por ninguna promesa.

about 4 years ago · Juan Pablo Isaza Denunciar
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