Kivételek elkapása a JavaScriptben
A kivételek elkapásához a
try-catch szerkezetet használjuk.
Szintaxisa a következő:
try {
// kód
} catch (error) {
// hiba kezelése
}
A try blokkban azt a kódot kell elhelyezni,
amely kivételt tartalmazhat. Ha
ennek a kódnak a végrehajtása során
kivételes helyzet áll elő, akkor a szkriptünk
nem fog meghibásodni a konzolban megjelenő hibával, hanem
a catch blokk kódja kezdődik el
végrehajtani.
Ebben a blokkban valamilyen megfelelő módon
kell reagálnunk a hibára. Például,
ha adatokat akartunk küldeni
az interneten keresztül, és az internet nem működik, a
catch blokkban kezelhetjük
a helyzetet: kiírhatunk például egy üzenetet
a felhasználónak, vagy később
megpróbálhatjuk újra elküldeni az adatokat - hátha
az internet már működik.
Ha a try blokk végrehajtása során semmilyen
kivételes helyzet nem történt, akkor
a hasznos kód egyszerűen végrehajtódik, az pedig a
catch blokkból - nem.
Példaként próbáljunk meg JSON-t elemezni és annak helytelensége esetén írjunk ki egy üzenetet erről:
try {
let data = JSON.parse('{1,2,3,4,5}');
} catch (error) {
alert('a JSON elemzése nem hajtható végre');
}
Adott egy kód, amely egy bizonyos karakterláncot ír a helyi tárolóba:
let str = 'valamilyen karakterlánc';
localStorage.setItem('key', str);
Csomagolja be ezt a kódot a try-catch
szerkezetbe.
A catch blokkban jelenítsen meg üzenetet
a tároló megteltéről. Ellenőrizze munkáját
5 MB-nál kisebb méretű karakterláncra és nagyobb méretű karakterláncra.
Adott egy JSON, amelyben egy tömb található.
Ha ez a JSON helyes, akkor jelenítse meg a tömb
elemeit ul listában. Ha pedig
a JSON helytelen, jelenítsen meg egy üzenetet
arról, hogy hiba történt az oldalon.