'async/await' in JavaScript: scomposizione facile
Ho avuto difficoltà ad apprendere il concetto asincrono e in attesa in JavaScript, ecco perché voglio spiegare qui il più semplicemente possibile in modo che non lo troverai affatto difficile:
Per le funzioni asincrone presumo che tu conosca già le promesse in JS, in caso contrario, leggi le promesse in JavaScript qui:
funzioni asincrone :
Una funzione può essere resa asincrona usando la parola chiave 'async'. Può contenere zero o più espressioni di attesa.
Funziona con Promise per evitare più situazioni .then() nella catena di promesse o per scrivere comportamenti basati su promesse in modo chiaro.
Dichiarazione: può essere dichiarata utilizzando 'async function' dove la parola chiave 'await' è consentita all'interno del corpo della funzione.
wait expression sospende l'esecuzione fino a quando la promessa di ritorno non viene soddisfatta o rifiutata, facendo in modo che la funzione promise si comporti in modo sincrono.
wait è valido solo all'interno della funzione async.
Esempio usando la promessa:
function resolveAfter6Second() {
console.log("starting a slow promise");
return new Promise ((resolve) => {
setTimeout( function () {
resolve("slow");
console.log("This is slow promise");
}, 6000);
} );
}
function resolveAfter3Second() {
console.log("starting fast promise");
return new Promise((resolve) => {
setTimeout(() => {
resolve("fast");
console.log("fast promise is done");
}, 3000);
});
}
async function sequentialStart() {
console.log("performing Sync Operation");
const slow = await resolveAfter6Second();
console.log(slow);
const fast = await resolveAfter3Second();
console.log(fast);
}
sequentialStart();
![Che cos'è un elenco collegato, comunque? [Parte 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)



































