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

203
Vistas
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
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