Хватање изузетака у JavaScript-у
За хватање изузетака користи се
конструкција try-catch. Она има
следећу синтаксу:
try {
// код
} catch (error) {
// руковање грешком
}
У блоку try треба сместити код
који може садржати изузетак. Ако
током извршавања овог кода настане
изузетна ситуација, онда наш скрипт неће
пасти са грешком у конзоли, већ ће се почети извршавати
код из блока catch.
У овом блоку треба некако адекватно
реагирати на грешку. На пример,
ако смо желели да пошаљемо неке податке
преко интернета и интернет не ради, у
блоку catch можемо се некако изборити
са ситуацијом: можемо, на пример, показати поруку
кориснику, или можемо после неког времена
покушати поново да пошаљемо податке - можда је
интернет почео да ради.
Ако током извршавања блока try није дошло до
изузетних ситуација, онда ће
корисни код једноставно бити извршен, а код из
блока catch - неће.
За пример, хајде да пробамо да парсирамо JSON и у случају његове неисправности да испишемо на екран поруку о томе:
try {
let data = JSON.parse('{1,2,3,4,5}');
} catch (error) {
alert('Није могуће извршити операцију парсирања JSON-а');
}
Дат је код који уписује неки стринг у локалну меморију:
let str = 'неки стринг';
localStorage.setItem('key', str);
Обмотајте овај код у конструкцију try-catch.
У блоку catch прикажите поруку о
препуњености меморије. Проверите рад
вашег кода за стринг величине мање од 5
MB и за стринг веће величине.
Дат је JSON, унутар кога се налази низ.
Ако је овај JSON исправан, онда прикажите елементе
низа у виду листе ul. Ако
JSON није исправан, прикажите на екрану поруку
да је на страници дошло до грешке.