Junior
Como pode tratar um erro (reject) de uma promessa numa função assíncrona?
sobes.tech IA
Resposta da IA
Pode usar try...catch.
async function processData() {
try {
const result = await fetchData(); // fetchData() pode retornar uma promessa que será rejeitada
console.log('Dados obtidos com sucesso:', result);
} catch (error) {
console.error('Erro ao obter dados:', error);
// Aqui pode realizar ações adicionais para tratar o erro
// Por exemplo, mostrar uma mensagem ao utilizador ou registar um log
}
}
// Método alternativo com .catch() (menos comum em async/await)
async function processDataAlt() {
await fetchData()
.then(result => {
console.log('Dados obtidos com sucesso:', result);
})
.catch(error => {
console.error('Erro ao obter dados:', error);
});
}
O uso de try...catch é mais preferido e idiomático para async/await. Permite centralizar o tratamento de erros num único bloco e parece mais síncrono.