javascript / intermediate
Snippet
Spezialisierte Logik mit benutzerdefinierten Fehlerklassen
Das Erweitern der integrierten Error-Klasse ermöglicht es Ihnen, domänenspezifische Fehler zu erstellen. Durch das Hinzufügen benutzerdefinierter Eigenschaften wie 'field' oder 'code' können Sie eine intelligentere Fehlerbehandlung und API-Antwortlogik implementieren.
snippet.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
class ValidationError extends Error {constructor(message, field) {super(message);this.name = 'ValidationError';this.field = field;this.code = 400;}}try {throw new ValidationError('Invalid email format', 'email');} catch (err) {if (err instanceof ValidationError) {console.error(`Field [${err.field}] error: ${err.message}`);}}
nodejs
Erklärung
1
class ValidationError extends Error
Erbt von der Basis-Error-Klasse, um die Stack-Trace-Funktionalität beizubehalten.
2
super(message)
Ruft den Konstruktor der Elternklasse auf, um die Standard-Fehlermeldung zu setzen.
3
err instanceof ValidationError
Identifiziert genau den spezifischen Fehlertyp für eine gezielte Behandlung.