Las siguientes características de ES9 o ES2018 que aprenderás son: método finally
para promesas y generadores asíncronos.
Método finally en promesas
El método finally
para promesas consiste en ejecutar código después que una promesa haya sido ejecutada como resuelta o rechazada.
promesa()
.then(response => console.log(response)
.catch(error => console.log(response)
.finally( () => console.log("Finalizado") )
Generadores asíncronos
Los generados asíncronos son semejantes a los generadores que ya conoces, pero combinando sintáxis de promesas.
async function* anotherGenerator() {
yield await Promise.resolve(1)
yield await Promise.resolve(2)
yield await Promise.resolve(3)
}
const generador = anotherGenerator()
generador.next().then(respuesta => console.log(respuesta.value))
generador.next().then(respuesta => console.log(respuesta.value))
generador.next().then(respuesta => console.log(respuesta.value))
Cómo utilizar for await
De la misma manera, for await
es un ciclo repetitivo que se maneja asíncronamente. El ciclo siempre debe estar dentro de una función con async
.
El valor es cada elemento del iterable puede tener cualquier nombre, por eso se inicia con let nombre
.
async function forAwait() {
const nombres = ["Alexa", "Oscar", "David"]
for await (let valor of nombres) {
console.log(valor)
}
}
forAwait()
Cursos para entender el asincronismo en JavaScript
Si aún no sabes en qué consiste el asincronismo, no te preocupes, existen cursos completos de este tema.
Contribución creada por Andrés Guano (Platzi Contributor).
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?