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

105
Vistas
La secuencia de ejecución al devolver un objeto Promise en promesa y luego el método

El código es:

 Promise.resolve().then(() => { console.log(0); return Promise.resolve(4); }).then((res) => { console.log(res) }) Promise.resolve().then(() => { console.log(1); }).then(() => { console.log(2); }).then(() => { console.log(3); }).then(() => { console.log(5); }).then(() =>{ console.log(6); })

Y el resultado es: 0 1 2 3 4 5 6 .

¿Por qué log 4 está después log 3 ? ¿Qué es lo especial que sucedió al devolver un promise object en el método .then ?

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

0

Javascript ejecuta un bucle de eventos.

Aquí está mi conjetura.

Promise.resolve() crea una promesa que se resolverá en la siguiente iteración. Y cada bloque entonces se ejecutará en la siguiente iteración después de que finalice el bloque anterior. Así que aquí está el orden de ejecución:

Iteración 1: Creó 2 promesas (nómbrelas A y B) que se resolverán en la Iteración 2

Iteración 2: la Promesa A se resuelve. La promesa B se resuelve

Iteración 3: then se ejecuta el bloque de la Promesa A, que imprime 0 y crea una nueva promesa (llámela C) que se resolverá en la Iteración 4. Primero then se ejecuta el bloque de la Promesa B, que imprime 1.

Iteración 4: Segundo then se ejecuta el bloque de la Promesa B, que imprime 2. La Promesa C se resuelve. (Dado que la Promesa C se agrega al ciclo de eventos más tarde que la Promesa B, la Promesa B se resuelve antes que la Promesa C)

Iteración 5: Tercero then se ejecuta el bloque de la Promesa B, que imprime 3. then , se ejecuta el bloque de la Promesa C, que imprime 4.

Iteración 6: adelante then se ejecuta el bloque de la Promesa B, que imprime 5.

Iteración 7: then ejecuta el quinto bloque de Promise B, que imprime 6.

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