Parla della costruzione async/await in JavaScript.
sobes.tech AI
Risposta dell'AI
async/await — zucchero sintattico sui promise, progettato per scrivere codice asincrono più semplice che sembra sincrono.
Una funzione contrassegnata con la parola async restituisce sempre una promessa. All'interno di una funzione async, è possibile usare la parola chiave await.
L'operatore await viene usato prima di una chiamata a una promessa. Sospende l'esecuzione della funzione async finché la promessa non viene risolta o rifiutata. Il risultato della promessa (successo o errore) viene restituito da await.
Se la promessa a cui si applica await viene rifiutata, ciò genera un'eccezione che può essere catturata con un blocco try...catch.
// Esempio di utilizzo di async/await
async function fetchData() {
try {
// Attende il completamento di un'operazione asincrona (ad esempio, una richiesta API)
const response = await fetch('https://api.example.com/data');
// Analizza la risposta in JSON
const data = await response.json();
// Mostra i dati ricevuti
console.log(data);
} catch (error) {
// Cattura eventuali errori
console.error('Errore nel recupero dei dati:', error);
}
}
// Chiamata alla funzione async
fetchData();
// Funzione async che restituisce una promessa
async function getValue() {
return 10; // Questo viene automaticamente avvolto in Promise.resolve(10)
}
getValue().then(value => console.log(value)); // Mostrerà 10
Vantaggi di async/await:
- Leggibilità del codice: Il codice asincrono assomiglia di più al codice sincrono
- Gestione degli errori: Più facile da usare con blocchi
try...catchstandard - Meno annidamento: Evita la "tortura dei callback" o lunghe catene
.then()
È importante ricordare che await può essere usato solo all'interno di funzioni async.