#Урок 6. Условные операторы

Управляющие операторы

if else —  этот оператор очень важен во многих языках программирования, в том числ и в JavaScript. Без него не обходится ни один серьезный программный код. Этот оператор сравнивает два значения типа Boolen TRUE (истина) или FALSE (ложь), и если условие истинно, то он выполняет эту задачу:

var a = prompt('Угадать число от 1 до 10','');

if (a == 7) {alert('Условие истинно и код выполнен!');};

В этом примере условное выражение делится на три части:
— ключевое слово if(от англ. если);
— в круглы скобках (условие);
— в фигурных скобках {код JavaScript, который выполняется, если условие истинно}
Условия были таковы — если ответ равен значению 7, то выполнить код в фигурных скобках, т.е. если значение равно TRUE, мы получим сообщение в модальном окне: «Условие истинно и код выполнен!», в противном случае ничего не произойдет.

else if —  является развитием оператора if и предполагает решение задач многоуровневой логики тогда, когда нужно протестировать сразу два и более условий. В конце обязательно должна присутствовать инструкция else на случай, если ни одна из инструкций if и else if не являются TRUE (истинными).

Например:

var a = prompt('Угадайте число от 1 до 10',''

if (a == 7) {alert('Поздравляю, Вы верно ответили!')}

else if (a > 10) {alert('Вы ввели значение больше 10! Попробуйте еще разок!');}

else {alert('Не верно!');};

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

Оператор — «?».

Возникает необходимость присвоить переменную. К примеру:

var access;
var age = prompt('Сколько тебе лет?', '');

if (age > 18) {
  access = true;
} else {
  access = false;
}

alert(access);

Благодаря оператору «?» это можно сделать проще.

Делится он на 3 части:

условие ? значение1 : значение2

Условие проверяется и если оно верно, то возвращается значение1, а если неверно – значение2.

Пример:

access = (age > 18) ? true : false;

Оператор '?' выполняется в основном позже чем большинство других, в частности – позже чем сравнения, поэтому скобки можем не ставить:

access = age > 18 ? true : false;

Но скобки влияют на читабельность кода, поэтому лучше приучать себя сразу их ставить.

«?» — единственный оператор, который имеет три аргумента. Остальные операторы имеют 1-2 аргумента.

Что если есть необходимость задать несколько операторов «?» ?

Пример:

var age = prompt('сколько лет?', 21);

var message = (age < 5) ? 'Добрый день!' :
  (age < 21) ? 'Здравствуй!' :
  (age < 20) ? 'Здравствуйте!' :
  'Прекрасный возраст!';

alert( message );

В данном случае знак вопроса проверяет сначала age < 5, если верно – возвращает 'Добрый день!', если нет – то проверяет age < 21. Если это верно – возвращает 'Здравствуй!', в ином случае проверка age < 20 и 'Здравствуйте!', а если ничего указано верно не было, то 'Прекрасный возраст!

Точно так же и с if..else:

if (age < 5) {
  message = 'Добрый день!';
} else if (age < 21) {
  message = 'Здравствуй!';
} else if (age < 20) {
  message = 'Здравствуйте!';
} else {
  message = 'Прекрасный возраст!';
}

Бывают случаи, когда «?» используют вместо «if»:

var company = prompt('Кто создал Apple?', '');

(company == 'steve jobs') ?
   alert('Да, правильно') : alert('Ошибочка');

На этом пожалуй мы закончим 6 урок. Вскоре мы все это будем еще проходить! А пока, двигаемся дальше!

Комментарии закрыты.