EvalError --- Erstellt eine Instanz, die einen Fehler darstellt, der in Bezug auf die globale Funktion eval () auftritt.
InternalError --- Erstellt eine Instanz, die einen Fehler darstellt, der auftritt, wenn ein interner Fehler in der JavaScript-Engine ausgelöst wird. ZB "zu viel Rekursion".
RangeError --- Erstellt eine Instanz, die einen Fehler darstellt, der auftritt, wenn eine numerische Variable oder ein numerischer Parameter außerhalb ihres gültigen Bereichs liegt.
ReferenceError --- Erstellt eine Instanz, die einen Fehler darstellt, der beim Aufheben der Referenzierung einer ungültigen Referenz auftritt.
SyntaxError --- Erstellt eine Instanz, die einen Syntaxfehler darstellt, der beim Parsen von Code in eval () auftritt.
TypeError --- Erstellt eine Instanz, die einen Fehler darstellt, der auftritt, wenn eine Variable oder ein Parameter keinen gültigen Typ hat.
URIError --- Erstellt eine Instanz, die einen Fehler darstellt, der auftritt, wenn encodeURI () oder decodeURI () ungültige Parameter übergeben werden.
RangeError
. Sollten Sie benutzerdefinierte Typen definieren oder nurthrow new Error("<message>");
?Die Konvention für außerhalb des Bereichs in JavaScript wird verwendet
RangeError
. Um den Typ zu überprüfen, verwenden Sie if / else +,instanceof
beginnend mit dem spezifischsten bis dem allgemeinstenquelle
else { throw; }
hier hinzufügenEinfache Lösung zum Senden und Anzeigen von Nachrichten nach Ausnahme.
Vorsicht
Oben ist keine Lösung, wenn wir nicht wissen, welche Art von Fehler vom Block ausgegeben werden kann. In solchen Fällen sollten Typschutzvorrichtungen verwendet und eine ordnungsgemäße Behandlung für ordnungsgemäße Fehler durchgeführt werden. Schauen Sie sich die Antwort von @Moriarty an.
quelle
<Error>
besteht darin, dem TS-Compiler mitzuteilen, dasse
es sich um einen Typ handelt,<Error>
damit Sie (1) Intellisense und (2) eine bessere Typprüfung haben. Beachten Sie jedoch, dass jede Besetzung überhaupt nicht in JS übersetzt wird und rein syntaktischer Zucker ist.Vergessen Sie nicht die switch-Anweisungen:
default
.instanceof
kann auf Superklasse passen.constructor
genau der Klasse.quelle