Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

184
Views
¿Qué sucede exactamente cuando llamamos .then después de que se resuelve una Promesa?

Tengo una var para mantener el objeto de la promesa y llamar a .then en diferentes lugares. Obtuve la misma marca de tiempo para diferentes .then. ¿Qué sucede cuando se llama .then a un objeto de promesa ya resuelto?

 var promise1 = new Promise((resolve) => {resolve(Date.now().toString())}) promise1.then((response) => {console.log(response)}); promise1.then((response) => {console.log(response)});
about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

¿Qué sucede exactamente cuando llamamos .then después de que se resuelve una Promesa?

Programa (justo antes del siguiente tic del bucle de eventos) que se llame a los controladores .then() .

Entonces, el Javascript actual que se está ejecutando continuará ejecutándose y finalizando y cuando devuelva el control al bucle de eventos, los .then() que se acaban de registrar en una promesa ya resuelta llamarán a sus devoluciones de llamada en el orden en que fueron registrados. Los controladores de promesa se sirven antes que otras cosas en el bucle de eventos, por lo que en realidad no llegan al bucle de eventos hasta que no haya más devoluciones de llamada de promesa para llamar.

Por lo tanto, siempre es seguro registrar un controlador .then() . No tienes que preocuparte de si la promesa ya está resuelta o no. De cualquier manera, se llamará al controlador .then() (suponiendo que la promesa se resuelva o ya se haya resuelto).

Entonces, si modifica el registro un poco así:

 const promise1 = new Promise((resolve) => {resolve(Date.now().toString())}) promise1.then((response) => {console.log("first .then()")}); promise1.then((response) => {console.log("second .then()")}); console.log("now here");

Obtendrá esta salida:

 now here first .then() second .then()
about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!