Условные
операторы
Условные
операторы позволяют пропустить или выполнить другие операторы в зависимости
от значения указанного выражения. Эти операторы являются точками принятия
решений в программе, и иногда их также называют операторами ветвления.
Оператор if/else
Оператор if - это базовый управляющий оператор, позволяющий
интерпретатору JavaScript выполнять
операторы в зависимости от условий. Оператор if имеет
две формы.
Сокращенная форма
оператор if:
if ( логическое выражение ) {
операторы
}
В этой форме
сначала вычисляется логическое выражение. Если полученный результат является
истинным, то операторы выполняются. Если выражение возвращает ложное значение,
то операторы не выполняются. Например:
var x= prompt('Введите число',"");
if ( x%2 == 0 )
alert('Число четное!');
else
alert('Число нечетное!');
Если оператор
один, то фигурные скобки можно опустить.
Полная форма
оператор if:
if (логическое
выражение1) {
последовательность1
}
else if (логическое выражение2) {
последовательность2
}
. . .
else if (логическое выражениеN) {
последовательностьN
}
else {
операторы
}
В этой форме
сначала вычисляется логическое
выражение1. Если полученный результат является истинным,
то выполняется 1-ая последовательность операторов и условный оператор
завершает свою работу. Если выражение возвращает ложное значение, то идет
проверка следующего логического выражения. Если все логические выражения ложны,
то тогда выполняется последний блок операторов.
Оператор switch
ОПЕРАТОР
ВЫБОРА в зависимости от значения данного выражения выбирает и
исполняет одну из нескольких заданных последовательностей операторов. В языке
имеется две формы записи условного оператора: полная и сокращенная.
Формат оператора
выбора в полной форме:
switch (выражение)
{
case значение1: последовательность1; break;
. . .
case значениеN: последовательностьN; break;
default:
последовательность; break;
}
Формат оператора выбора в сокращенной форме:
switch(выражение)
{
case значение1: последовательность1; break;
. . .
case значениеN: последовательностьN;break;
}
где switch, case, break, default – служебные слова;
выражение - любое выражение.
значение1, … , значениеN -
постоянные, которые являются значениями данного выражения;
последовательность - совокупность операторов
языка JavaScript.
ИСПОЛНЕНИЕ ОПЕРАТОРА ВЫБОРА:
1) Вычисляется
значение выражения.
2) Если его
значение совпадает с одним из перечисленных значений, то исполняется
соответствующая этому значению последовательность операторов и переходим к шагу
3. Если значение выражения не совпадает ни с одним из данных значений, то
выполняется последовательность операторов, записанная после служебного
слова default,и переходим к шагу 3.
3) Далее
выполняется оператор, следующий за оператором выбора.
Пример:
<script >
var x= prompt('Введите имя',"");
switch(x)
{
case 'Борис':
document.write("Привет, " + x);
break;
case 'Аяс':
document.write("До свидания, " + x);
break;
default:
document.write("У вас имени нет!");
}
</script >
Тернарный оператор ?:
Оператор ?: - это
единственный тернарный (с тремя операндами) оператор в JavaScript.
Этот оператор обычно записывается как ?:, хотя в программах он выглядит
по-другому. Он имеет три операнда:
· первый
предшествует символу ?
· второй - между ? и :
· третий - после :
Используется он следующим
образом:
<script >
var n = 10;
// Определить четное или нечетное число
var result = (n % 2 == 0)
? "четное" : "нечетное";
document.write(result); // Результат "четное"
</script >
Тот же результат
можно получить с помощью оператора if, но оператор ?: часто
оказывается удобным сокращением.
Ниже приводится
типичный пример, в котором проверяется, определена ли переменная (и имеет
истинное значение), и если да, то берется ее значение, а если нет, берется
значение по умолчанию:
var message = 'Привет, '
+ (username ? username : 'друг');
Эта проверка
эквивалентна следующей конструкции if, но более
компактна:
var message = 'Привет, ';
if (username)
{
message += username;
}
else
{
message += 'друг';
}