Прихващане на изключения в 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 не е коректен, изведете на екрана съобщение
че на страницата е възникнала грешка.