Junior
Jak ošetřit chybu (reject) promise v asynchronní funkci?
sobes.tech AI
Odpověď od AI
Lze použít try...catch.
async function processData() {
try {
const result = await fetchData(); // fetchData() může vrátit slib, který bude odmítnut
console.log('Data byla úspěšně získána:', result);
} catch (error) {
console.error('Chyba při získávání dat:', error);
// Zde lze provést další kroky pro zpracování chyby
// Například zobrazit zprávu uživateli nebo zaznamenat log
}
}
// Alternativní způsob s .catch() (méně rozšířený v async/await)
async function processDataAlt() {
await fetchData()
.then(result => {
console.log('Data byla úspěšně získána:', result);
})
.catch(error => {
console.error('Chyba při získávání dat:', error);
});
}
Použití try...catch je preferovanější a idiomatické pro async/await. Umožňuje centralizovat zpracování chyb v jednom bloku a vypadá to více synchronně.