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

199
Views
Llamada implícita al método then() con la palabra clave await

Cuando ejecuto este código:

 class Thenable { constructor(num) { this.num = num; } then(resolve, reject) { console.log(resolve); setTimeout(() => resolve(this.num * 4), 1000); } }; async function f() { let result = await new Thenable(1); //then() method is called automatically console.log(result); } f();

Me di cuenta de que el método then() se llama sin una llamada explícita.

Me sorprendió, porque pensé que cuando javascript cumple con la espera, automáticamente devuelve el valor resuelto dentro de la función ejecutora como en este código:

 async function f() { let promise = new Promise((resolve, reject) => { this.num = 1; console.log('this.num = ' + this.num); setTimeout(() => resolve(this.num * 4), 1000) }); let result = await promise; //just assigns resolved value inside executor function into result variable console.log(result+'!'); } f();

Dado que Promise es Thenable, las preguntas son:

-¿Cómo funciona bajo el capó en caso de que Promise se use con await?

- ¿Javascript llama entonces () al método de Promise automáticamente cuando se encuentra en espera?

- ¿O javascript distingue dos casos y procesos de manera diferente en el caso de Tenable y Promise?

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