Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






Ключевое Слово throw

Практическая работа № 6.

Тема. Устранение ошибок в программе.

Конструкция Try... Catch

Конструкция try...catch позволяет вам проверять блок кода на наличие ошибок.

JavaScript - Перехват Ошибок

При просмотре Веб-страниц в интернете все мы сталкивались с сигнальным окном JavaScript, говорящим нам, что произошла ошибка времени выполнения и спрашивающим "Не желаете ли перейти к отладке?". Сообщение об ошибке может быть полезно для разработчиков, но не для пользователей. Когда пользователи видят ошибки, они как правило покидают Веб-страницу.

Этот урок научит вас, как перехватывать и обрабатывать сообщения об ошибках JavaScript, так что вы не потеряете ваших зрителей.

Конструкция try... catch

Конструкция try... catch позволяет вам проверять блок кода на наличие ошибок. Блок try содержит код, который будет исполняться и проверяться, а блок catch содержит код, который будет выполнен при возникновении ошибок.

Синтаксис

try { //Запустить некоторый код здесь } catch(err) { //Обработка ошибок здесь }

Заметьте, что try... catch пишется в нижнем регистре (маленькими буквами). Использование заглавных букв сгенерирует ошибку JavaScript!

Примеры

Пример ниже, как предполагается, выведет всплывающее окно "Добро пожаловать гость!" при нажатии кнопки мыши. Однако, есть опечатка в функции message(). alert() напечатано как adddlert(). Возникает ошибка JavaScript. Блок catch перехватывает ошибку и выполняет дополнительный код для ее обработки. Код отображает пользовательское сообщение об ошибке, информирующее пользователя, что произошло:

Пример 1
<html> <head> <script type="text/javascript"> var txt=""; function message() { try { adddlert("Добро пожаловать гость!"); } catch(err) { txt="На этой странице произошла ошибка.\n\n"; txt+="Описание ошибки: " + err.description + "\n\n"; txt+="Нажмите OK, чтобы продолжить.\n\n"; alert(txt); } } </script> </head> <body> <input type="button" value="Просмотр сообщение" onclick="message()" /> </body> </html>

Результат

Следующий пример использует окно подтверждения, чтобы показать пользовательское сообщение, говорящее пользователям, что они могут нажать OK, чтобы продолжить, или нажать Отмена, чтобы перейти на главную страницу. Если метод возвращает false, пользователь нажал Отмена, и код перенаправляет пользователя. Если же метод возвращает true, код ничего не делает:

Пример 2
<html> <head> <script type="text/javascript"> var txt=""; function message() { try { adddlert("Добро пожаловать гость!"); } catch(err) { txt="На этой странице произошла оишбка.\n\n"; txt+="Нажмите OK, чтобы продолжить просмотр этой страницы,\n"; txt+="или Отмена, чтобы вернуться на главную страницу.\n\n"; if(!confirm(txt)) { document.location.href="http://uroki-javascript.ru/"; } } } </script> </head> <body> <input type="button" value="Просмотр сообщения" onclick="message()" /> </body>   </html>

 

Результат

Ключевое Слово throw

Оператор throw позволяет вам создавать исключения. Если вы используете этот оператор вместе с конструкцией try... catch, вы можете контролировать ход выполнения программы и генерировать понятные сообщения об ошибках.

Синтаксис

throw исключение

Исключение может быть строкой, целым числом, Булевым типом или объектом.

Заметьте что throw пишется буквами нижнего регистра. Использование букв верхнего регистра сгенерирует ошибку JavaScript!

Пример

Пример ниже определяет значение переменной с именем x. Если значение x больше 10, меньше 0, или не является числом, мы хотим сгенерировать ошибку. Ошибка затем перехватывается аргументом catch и отображается соответствующее сообщение об ошибке:

Пример 3
<html> <body> <script type="text/javascript"> var x=prompt("Введите число между 0 и 10:",""); try { if(x>10) { throw "Err1"; } else if(x<0) { throw "Err2"; } else if(isNaN(x)) { throw "Err3"; } } catch(er) { if(er=="Err1") { alert("Ошибка! Значение слишком велико"); } if(er=="Err2") { alert("Ошибка! Значение слишком мало"); } if(er=="Err3") { alert("Ошибка! Значение не является числом"); } } </script> </body> </html>

Результат

<== предыдущая лекция | следующая лекция ==>
 | Тема: «Принципы поиска в системе « Консультант плюс»».


Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных