Hvatanje izuzetaka u ugniježdenom kodu u JavaScript-u
Posebnost i pogodnost izuzetaka leži u tome što ih možemo uhvatiti na bilo kom nivou ugniježdenosti koda. Pogledajmo na primeru. Neka imamo funkciju koja čuva podatke u lokalno skladište:
function save(str) {
localStorage.setItem('key', str);
}
Kao što već znate, pri prekoračenju skladišta,
metoda setItem će baciti izuzetak.
Međutim, nije neophodno da se ovaj izuzetak hvati
unutar funkcije save. Možemo obaviti
svaki poziv same funkcije u try:
try {
save('neki string');
} catch (error) {
alert('nema više prostora u lokalnom skladištu!');
}
Data je funkcija koja pretvara JSON u niz:
function getArr(json) {
return JSON.parse(json);
}
U sledećem kodu se iz JSON-a dobija niz:
let arr = getArr('[1,2,3,4,5]');
console.log(arr);
Obavite poziv funkcije u konstrukciju try-catch.