Queremos que este proyecto de código abierto esté disponible para personas de todo el mundo.

Ayuda a traducir el contenido de este tutorial a tu idioma!

regresar a la lección

Llamado async desde un non-async

Tenemos una función “regular” llamada f. ¿Cómo llamar la función async, wait() y usar su resultado dentro de f?

async function wait() { await new Promise(resolve => setTimeout(resolve, 1000)); return 10; } function f() { // ¿...qué escribir aquí? // Necesitamos llamar async wait() y esperar a obtener 10 // recuerda, no podemos usar "await" }

P.D. La tarea es técnicamente muy simple, pero la pregunta es muy común en desarrolladores nuevos en async/await.

Este es el caso cuando saber cómo trabaja por dentro es útil.

Simplemente trata el llamado async como una promesa y añádele .then:

async function wait() { await new Promise(resolve => setTimeout(resolve, 1000)); return 10; } function f() { // muestra 10 después de 1 segundo wait().then(result => alert(result)); } f();