Junior
Hoe kun je een fout (reject) van een belofte afhandelen in een asynchrone functie?
sobes.tech AI
Antwoord van AI
Je kunt try...catch gebruiken.
async function processData() {
try {
const result = await fetchData(); // fetchData() kan een belofte teruggeven die wordt afgewezen
console.log('Gegevens succesvol ontvangen:', result);
} catch (error) {
console.error('Fout bij het ophalen van gegevens:', error);
// Hier kunnen aanvullende acties worden ondernomen om de fout af te handelen
// Bijvoorbeeld een bericht aan de gebruiker tonen of een logboek bijhouden
}
}
// Alternatieve methode met .catch() (minder gebruikelijk in async/await)
async function processDataAlt() {
await fetchData()
.then(result => {
console.log('Gegevens succesvol ontvangen:', result);
})
.catch(error => {
console.error('Fout bij het ophalen van gegevens:', error);
});
}
Het gebruik van try...catch is meer de voorkeur en idiomatisch voor async/await. Het stelt je in staat om foutafhandeling te centraliseren in één blok en het lijkt meer synchroon.