Sobes.tech
Junior

Wie kann man einen Fehler (Reject) eines Promises in einer asynchronen Funktion behandeln?

sobes.tech KI

Antwort von AI

Man kann try...catch verwenden.

async function processData() {
  try {
    const result = await fetchData(); // fetchData() kann ein Promise zurückgeben, das abgelehnt wird
    console.log('Daten erfolgreich erhalten:', result);
  } catch (error) {
    console.error('Fehler beim Abrufen der Daten:', error);
    // Hier können zusätzliche Aktionen zur Fehlerbehandlung durchgeführt werden
    // Zum Beispiel eine Nachricht an den Benutzer anzeigen oder ein Log schreiben
  }
}

// Alternativer Weg mit .catch() (weniger verbreitet bei async/await)
async function processDataAlt() {
  await fetchData()
    .then(result => {
      console.log('Daten erfolgreich erhalten:', result);
    })
    .catch(error => {
      console.error('Fehler beim Abrufen der Daten:', error);
    });
}

Die Verwendung von try...catch ist für async/await bevorzugt und idiomatisch. Es ermöglicht die zentrale Fehlerbehandlung in einem Block und wirkt synchroner.