Ausnahmebehandlung in JavaScript
Zum Abfangen von Ausnahmen wird die
Konstruktion try-catch verwendet.
Sie hat die folgende Syntax:
try {
// Code
} catch (error) {
// Fehlerbehandlung
}
Im Block try sollte der Code platziert werden,
der eine Ausnahme enthalten könnte. Wenn
bei der Ausführung dieses Codes tatsächlich
eine Ausnahmesituation auftritt, bricht unser
Skript nicht mit einem Fehler in der Konsole ab,
sondern der Code im Block catch wird
ausgeführt.
In diesem Block sollten wir auf angemessene Weise
auf den Fehler reagieren. Zum Beispiel,
wenn wir Daten über das Internet senden wollten
und das Internet nicht funktioniert, können
wir uns im Block catch irgendwie mit der
Situation behelfen: Man kann beispielsweise eine
Meldung für den Benutzer ausgeben, oder man kann
versuchen, die Daten nach einer Weile erneut
zu senden - vielleicht funktioniert das Internet
ja wieder.
Wenn bei der Ausführung des Blocks try keine
Ausnahmesituationen aufgetreten sind, wird
der nützliche Code einfach ausgeführt, und der
Code aus dem Block catch wird übersprungen.
Versuchen wir als Beispiel, JSON zu parsen und im Falle seiner Ungültigkeit eine Meldung darüber auf dem Bildschirm auszugeben:
try {
let data = JSON.parse('{1,2,3,4,5}');
} catch (error) {
alert('JSON-Parsing-Operation kann nicht ausgeführt werden');
}
Gegeben ist Code, der einen bestimmten String in den Local Storage schreibt:
let str = 'irgendein String';
localStorage.setItem('key', str);
Wickeln Sie diesen Code in die Konstruktion try-catch ein.
Geben Sie im Block catch eine Meldung über
die Speicherüberfüllung aus. Überprüfen Sie die Funktionsweise
Ihres Codes für einen String mit einer Größe von weniger als 5
MB und für einen String mit einer größeren Größe.
Gegeben ist ein JSON, in dem ein Array gespeichert ist.
Wenn dieses JSON korrekt ist, geben Sie die Elemente
des Arrays als Liste ul aus. Wenn das
JSON jedoch nicht korrekt ist, geben Sie eine Meldung
auf dem Bildschirm aus, dass auf der Seite ein Fehler aufgetreten ist.