JavaScript · Middle · Pytanie 46 z 75
Jak poprawnie utworzyć własną klasę błędu?
class ValidationError extends Error {
constructor(message, field) {
super(message);
this.name = "ValidationError";
this.field = field;
}
}- ✓Poprawna odpowiedź: Rozszerzyć
Error, wywołaćsuper(message)i ustawićname - 2Utworzyć zwykły obiekt
{ message }-throwprzyjmuje dowolny obiekt - 3Rozszerzyć
String, by komunikat wyświetlał się poprawnie
Wyjaśnienie
Rozszerzenie Error daje stack trace, poprawne działanie instanceof i wypisywanie w konsoli. Rzucać można cokolwiek, ale zwykły obiekt nie ma stosu. Do łańcuchowania przyczyn jest new Error('msg', { cause: err }).