TypeScript:
Fehlerbehandlung
Wie geht das:
In TypeScript umfasst die Fehlerbehandlung oft try
, catch
- und finally
-Blöcke.
function riskyOperation() {
throw new Error("Etwas ist schiefgelaufen!");
}
function handleErrors() {
try {
riskyOperation();
} catch (error) {
console.error("Fehler gefangen:", error.message);
} finally {
console.log("Das wird immer ausgeführt, Fehler oder nicht.");
}
}
handleErrors();
Beispielausgabe:
Fehler gefangen: Etwas ist schiefgelaufen!
Das wird immer ausgeführt, Fehler oder nicht.
Asynchrones Beispiel mit Promises:
async function asyncRiskyOperation() {
return new Promise((resolve, reject) => {
// Simuliere einen Fehler
reject("Kläglich gescheitert");
});
}
async function handleAsyncErrors() {
try {
await asyncRiskyOperation();
} catch (error) {
console.error("Asynchronen Fehler gefangen:", error);
}
}
handleAsyncErrors();
Beispielausgabe:
Asynchronen Fehler gefangen: Kläglich gescheitert
Vertiefung
Fehlerbehandlung ist seit Beginn der Programmierung ein Eckpfeiler. In TypeScript, das auf JavaScript aufbaut, wurde die Fehlerbehandlung mit der Einführung von async/await in ECMAScript 2017 robuster. Vorher verließen wir uns oft auf Callback-Funktionen und Promises, um Fehler in asynchronem Code zu behandeln.
Eine Alternative zu try/catch
in TypeScript ist die Verwendung von Fehlergrenzen, die von Frameworks wie React bereitgestellt werden. Für die serverseitige Behandlung können wir in Plattformen wie Express.js Middleware verwenden, um das Fehlermanagement zu zentralisieren.
Implementierungstechnisch hat TypeScript keinen eigenen Fehlerbehandlungsmechanismus, sondern verlässt sich auf JavaScripts Mechanismus. Benutzerdefinierte Fehlerklassen können die Error
-Klasse erweitern, um detailliertere Fehlerinformationen anzubieten.