offline version v3
Запись на курсы по HTML, CSS, JavaScript, PHP, фреймворкам и CMS,
а также: помощь в поиске работы и заказов, стажировка на реальных проектах→
⊗jsSpExcCt 139 of 294 menu

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

Дан JSON, внутри которого хранится массив. Если этот JSON корректный, то выведите элементы массива в виде списка ul. Если же JSON не корректный, выведите на экран сообщение о том, что на странице случилась ошибка.

enru