Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

JavaScript для начинающих. Изучаем с нуля. выпуск двенадцатый


Информационный Канал Subscribe.Ru

Рассылка для всех, кто желает освоить JavaScript

JavaScript для начинающих
Изучаем с нуля

Выпуск #12, 2005-08-30
Письмо автору
Если нужен хостинг
Сборник Java-скриптов Свой сайт за 15 минут

Тестирование и стравнение значений

Оператор if

Одно из основных преимуществ всех языков программирования - это возможность проверки и сравнения значений. Это позволяет программисту задавать разные сценарии поведения программы в зависимости от введенных пользователем данных.

Оператор if чаще других используется в JavaScript для сравнения данных. Этот оператор используется практически во всех известных языках программирования. Его конструкция позаимствована из грамматики английского языка. Например, давайте рассмотрим простое английское предложение.

if phone rings, answer it. (Если телефон зазвонит, поднимите трубку.)

Это предложение состоит из двух частей: условия if the phone rings (Если телефон зазвонит) и действия answer it (поднимите трубку). Оператор if в JavaScript используется подобным образом. Вот пример стандартного оператора с командой if:

if (a==1) window.alert("1 найдено!");

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

В предыдущем примере в случае правильности условия выполняется только одно действие. При необходимости можно также при выполнении условия задавать несколько операторов, заключив их в фигурные скобки {}. Это и продемонстрировано в листинге 12.1.

Листинг 12.1. Оператор if, используемый с несколькими операторами действия


1:    if (a==1) {
2:         window.alert("1 найдено!");
3:         a = 0;
4:    }

Этот блок операторов также проводит проверку значения переменной a. Если оно равно 1, то отображается сообщение и переменной a определяется значение 0.

Условные операторы

В скобках указываются условные выражения. Выражения условия содержат два сравниваемых значения (в предыдущем примере это переменная a и число 1). В качестве значения может выступать переменная, константа или целое выражение.

Между двумя сравниваемыми значениями вводится уловный оператор. Этот оператор задает условие, которому должны удовлетворять оба значения. Ниже приведены все используемые в JavaScript условные операторы.

  • == (равно)
  • != (не равно)
  • < (меньше)
  • > (больше)
  • <= (меньше или равно)
  • >= (больше или равно)

Будьте внимательны и не путайте оператор сравнения (==) с оператором определения значения (=). Хотя оба оператора обозначены символом равенства, первый используется для сравнения двух значений, а второй - для определения значения переменной. Это одна из самых распространенных ошибок при программировании на JavaScript.

Совместное использование логических и условных операторов

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

В приведенном ниже примере проверяются разные условия и выполняется одно и то же действие:

if (phone == " ") window.alert("Ошибка!");
if (email == " ") window.alert("Ошибка!");

С помощью логического оператора эти два оператора объединяются в один:

if (phone == " " || email == " ") window.alert("Ошибка!");

В этом выражении использован логический оператор ИЛИ (||). На обычном языке это выражение можно определить как: "Если телефонный номер или адрес электронной почты содержит пробел, то на экране отображается сообщение обо ошибке".

Еще один логический оператор, с которым вы будете часто сталкиваться - это оператор И (&&). Например:

if (phone == " " && email == " ") window.alert("Ошибка!");

В этом выражении вместо оператора || использован оператор &&. В этом случае сообщение об ошибке будет отображаться на экране только в том случае, если выполняются оба условия (т.е. и телефонный номер, и адрес электронной почты содержит пробелы). По правде говоря, оператор ИЛИ использовать в данном случае предпочтительнее.

В случае использования оператора && сначала проверяется первое условие. Если оно не выполняется, то второе условие проверяться не будет. В этом нет надобности. Используйте эту особенность логических операторов для повышения производительности.

Третий логический оператор, с которым не помешает познакомиться, - это оператор НЕ (!). Он используется для инвертирования выражения, другими словами, в случае невыполняемости условия будут выполняться указанные операторы действия. Ниже приведен пример оператора НЕ:

if (phone != " ") window.alert("Правильно!");

В этом случае оператор ! используется как часть оператора сравнения (!=). Этот оператор инвертирует условие. Поэтому, если телефонный номер не содержит пробела, то выводится сообщение о правильности его введения.

Логические операторы используются очень часто. Именно поэтому так просто сделать в них ошибку и неправильно задать условие. Например, условие a < 10 && a > 20 на первый взгляд правильное. Но если вы его проанализируете, то получите следующее: "если a меньше 10 и больше 20". Одновременно оба эти условия выполняться не могут. Поэтому необходимо вместо оператора && использовать оператор ||.

Оператор else

Дополнительный оператор, используемый вместе с оператором if, - это оператор else. Как и в обычном языке (else в переводе с английского означает иначе), этот оператор определяет действия, которые выполняются в случае невыполнения условия. В листинге 12.2 приведен пример использования оператора else.

Листинг 12.2. Пример использования операторов if и else


1:    if (a==1) {
2:         window.alert("1 найдено!");
3:         a = 0;
4:    }
5:    else window.alert("Неправильное значение: " + a);

Если условие выполняется отображается сообщение и переменной a назначается новое значение 0. Если же условие не выполняется (если a не равно 1), то отображается другое сообщение. Если в операторе else используется несколько операторов, то необходимо заключать их в фигурные скобки.


Вопросы для самоконтроля

1. Что делает оператор if (fig==1)?

Определяет переменной fig значение 1
Отображает сообщение об ошибке, поскольку названия фруктов в качестве имен переменных использоваться не могут
Проверяет, равна ли переменная единице, и выполняет в случае совпадения необходимые действия

2. Какой из указанных операторов означает "Не равно"?

!
!=
<>

2. Легко ли писать скрипты?

Да
Нет
Не очень

(Если в почтовой программе кнопка не срабатывает, сохраните страницу на диск и откройте в браузере.)


В следующем выпуске мы рассмотрим использование условных выражений и задание нескольких условий с помощью одного оператора.

Оставайтесь с нами. До встречи!


Хотите получить 50 $ за 5 минут? Тогда Вам сюда... (50 $ получит только первый миллион человек, количество уже превысило 980 тысяч.)



Изучай иностранные языки и зарабатывай по 30$ в день!

Как всего за 8.5 месяцев построить систему, которая долгие годы будет приносить Вам прибыль. Получите четкий пошаговый инструктаж в свое 100% пользование АБСОЛЮТНО БЕСПЛАТНО, пока этого не сделали другие!

Скачать бесплатно: http://nbusiness.ru/book/mobbook.rar

Письмо автору
Если нужен хостинг
Сборник Java-скриптов Свой сайт за 15 минут

ведущий рассылки: Виталий Прохоренко
http://nbusiness.ru


Subscribe.Ru
Поддержка подписчиков
Другие рассылки этой тематики
Другие рассылки этого автора
Подписан адрес:
Код этой рассылки: inet.webbuild.javascripts
Отписаться
Вспомнить пароль

В избранное