<MyRusakov.ru />

Создание крупного проекта на Java с нуля

Создание крупного проекта на Java с нуля

Данный курс научит Вас создавать крупные проекты на Java грамотно и быстро. В курсе Вы увидите создание большой и сложной программы на Java абсолютно с нуля.

В начале курса у нас будет только идея, а в конце готовый продукт, который можно использовать в практических целях.

В рамках упражнений курса Вы параллельно со мной будете создавать свою большую программу на Java, что даст Вам необходимую практику, после которой для Вас уже не будет разницы, какого размера создавать программы.

Подробнее
Подписка

Подписавшись по E-mail, Вы будете получать уведомления о новых статьях.

Подписка Подписаться

Добавляйтесь ко мне в друзья ВКонтакте! Отзывы о сайте и обо мне оставляйте в моей группе.

Мой аккаунт Мой аккаунт Моя группа
Опрос

Каким движком Вы предпочитаете пользоваться?

Обработка исключений в JavaScript

Обработка исключений в JavaScript

Иногда при написании скриптов приходится обрабатывать различные случаи, которые выходят за рамки нормального выполнения программы. Дело в том, что если не обрабатывать всевозможные исключения в JavaScript, то наш скрипт даст сбой. И о том, что такое исключения и как их обрабатывать в JavaScript, мы и поговорим.

Для обработки исключений в JavaScript (впрочем, в других языках тоже) используется конструкция try-catch (попытаться-перехватить). Суть этой конструкции следующая: try - блок, в котором мы выполняем код нормального выполнения скрипта. И если в этом блоке возникает исключительная ситуация, то она передаётся в блок catch, где уже обрабатывается.

Давайте с Вами напишем простой скрипт, которые будет генерировать исключение, если имя пользователя (допустим, полученное из формы регистрации) меньше 3-х символов.

function checkName(name) {
  try {
    if (name.length < 3) throw "Имя слишком короткое";
    alert("Имя написано верно!");
  }
  catch (er) {
    alert(er);
  }
}

Вначале мы создаём функцию, которой передают параметр name. Дальше мы создаём блок try, в котором проверяем если имя больше или равно 3-м символам, то тогда поздравляем пользователя с тем, что он ввёл правильно своё имя. А если имя меньше 3-х символов, то мы выбрасываем (throw) исключение. В блоке catch это исключение перехватывается и выводится текст этого исключения. Советую запустить эту функцию: вначале передав нормальный параметр (строку больше или хотя бы 3 символа), а потом строку, меньше 3-х символов.

Ещё давайте рассмотрим блок finally в JavaScript. Данный блок срабатывает в любом случае, несмотря на то: вызывалось исключение или нет. Давайте с Вами дополним нашу функцию, сказав "Спасибо!" нашему пользователю.

function checkName(name) {
  try {
    if (name.length < 3) throw "Имя слишком короткое";
    alert("Имя написано верно!");
  }
  catch (er) {
    alert(er);
  }
  finally {
    alert("Спасибо!");
  }
}

Как видите, независимо от того было исключение или нет, всё равно блок finally срабатывает.

Лично моё мнение, что обработка исключений в JavaScript - это достаточно редкое явление просто потому, что этому нет особого применения. Ведь согласитесь, что прошлую задачу мы могли бы решить гораздо проще, безо всяких try и catch. Но в других языках программирования (например, в Java) эта конструкция используется безумно часто и без неё немыслимо серьёзное программирование в принципе. Но в будущем всё может поменяться.

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.
Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,
то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка:

    Она выглядит вот так: Как создать свой сайт

  2. Текстовая ссылка:

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи):

Комментарии (9):

sync.o sync.o 20.04.2011 21:39:26

Михаил, а можно ли использовать try-catch для достижения кроссбраузерности?

Ответить

Admin Admin 20.04.2011 21:40:53

Кроссбраузерность достигается, в основном, HTML и CSS. И немного JavaScript, однако, try-catch используется, но достаточно редко.

Ответить

sync.o sync.o 20.04.2011 21:55:49

Ну напр., try работает ли какая-то функция в IE, если ошибка, то catch.

Ответить

Admin Admin 20.04.2011 21:59:33

Проблем с работой функций в IE в большинстве случаев не возникает, разве что за малым исключением, но действительно try-catch используется для их обработки.

Ответить

mackay mackay 14.07.2013 17:47:35

Михаил,я только начинаю понимать javascript, function checkName(name) вот name мы выбираем по id, вот так: var name = getElementById('name');?

Ответить

Admin Admin 14.07.2013 21:38:58

Вопрос вообще не понятен.

Ответить

mackay mackay 14.07.2013 22:08:43

например есть input с айди name: <input id="name"></input>, и что бы передать данные через POST мы делаем так var name = getElementById('name').val();

Ответить

Admin Admin 15.07.2013 10:23:06

Да.

Ответить

sergeyJS sergeyJS 25.02.2015 12:08:05

Кстати, если нужно просто посмотреть/залогировать ошибки на клиентах - можно вообще не использовать try-catch. Достаточно заюзать один из сервисов отслеживания JS-ошибок: t.onthe.io/js/errors/, trackjs.com, jslogger.com. Я остановился на первом из-за его бесплатности и простоты. Нужно скопировить и вставить всего 1 строку кода. Сразу видишь какие JS-ошибки происходят у пользователей, насколько они частые, в каких браузерах и тд.

Ответить

Для добавления комментариев надо войти в систему.
Если Вы ещё не зарегистрированы на сайте, то сначала зарегистрируйтесь.