0 Tage Serie
javascript / intermediate
Snippet

Verbessertes Debugging durch Error Chaining

Die 'cause'-Eigenschaft ermöglicht es, Fehler mit kontextuellen Informationen zu umschließen, während der ursprüngliche Fehler für das Debugging und die Stack-Trace-Analyse erhalten bleibt.

snippet.js
javascript
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
async function fetchData() {
try {
await db.connect();
} catch (err) {
throw new Error('Database connection failed', { cause: err });
}
}
// Accessing the original error
try {
await fetchData();
} catch (e) {
console.error(e.message);
console.error('Original cause:', e.cause);
}
nodejs
Erklärung
1
{ cause: err }
Übergibt das ursprüngliche Fehlerobjekt als zweites Argument an den Error-Konstruktor.
2
e.cause
Ruft den zugrunde liegenden Fehler ab, der die aktuelle Ausnahme ausgelöst hat.