Привет, мир!
Вызов console.log(message) в строке привел к появлению в кон-
соли строки "Привет, мир!".
Теперь, когда вы знаете, как с удобством писать длинные JavaScript-
программы, можно перейти к изучению условных конструкций.
96 Часть I. Основы
Условные конструкции
В JavaScript есть два вида условных конструкций — это if и if...
else. Оператор if выполняет фрагмент кода, если какое-то условие
If — если
истинно (true). Например: если вы хорошо себя вели, то получите кон-
If… else —
фетку. А оператор if... else выполняет один фрагмент кода, если усло-
если… иначе
вие дает true, и другой фрагмент в противном случае. Например: если
вы хорошо себя вели, получите конфетку, иначе вас не отпустят гулять.
Конструкция if
Cамая простая из управляющих конструкций JavaScript — это if. Она
используется, чтобы запускать код, если некое условие истинно (true).
Вернитесь к нашему HTML-файлу и замените содержимое элемента
script следующими строками:
var name = "Николай";
console.log("Привет, " + name);
if (name.length > 6) {
console.log("Ну и длиннющее же у вас имя!");
}
Сначала в строке мы создали переменную name и присвоили
ей значение — строку "Николай". Затем, в строке , мы с помощью
console.log напечатали строку "Привет, Николай".
В строке мы использовали конструкцию if ,чтобы проверить:
длина name больше, чем шесть символов? Если это так, в строке мы
посредством console.log выводим: "Ну и длиннющее же у вас имя!".
Как показано на рис. 6.1, конструкция if состоит из двух частей:
условия и тела. Условие должно давать булево значение. А тело — одна
или несколько строк JavaScript-кода, которые будут выполнены, если
условие истинно (true).
Конструкция if проверяет, истинно ли условие
if (condition) {
console.log("Делаем что-то");
}
Код, который выполняется, если условие дает true,
называется телом if
Рис. 6.1. Общая структура конструкции if
6. Условия и циклы 97
После загрузки нашей HTML-странички со встроенным JavaScript-
кодом в консоли должно появиться:
Привет, Николай
Ну и длиннющее же у вас имя!
В имени Николай 7 букв, поэтому name.length вернет значение 7,
и условие name.length > 6 даст true .В результате будет выполнено
тело оператора if, и в консоли появится несколько фамильярное сооб-
щение. Чтобы избежать выполнения if, поменяйте имя Николай на Ник
(оставив остальной код без изменений):
var name = "Ник";
Теперь сохраните файл и перегрузите страничку. На этот раз условие
name.length > 6 даст false, поскольку name.length равно 3. В итоге
тело оператора if выполнено не будет, а в консоли появится лишь:
Привет, Ник
Тело оператора if выполняется, только когда условие дает true.
Если же условие дает false, интерпретатор игнорирует конструкцию if
и переходит к следующей за ней строке.
Конструкция if... else
Как я уже говорил, оператор if запускает код своего тела, только если
условие дает true. Но если вы хотите, чтобы по условию false тоже
что-то происходило, вам нужна конструкция if... else.
Давайте дополним предыдущий пример:
var name = "Николай";
console.log("Привет, " + name);
if (name.length > 6) {
console.log("Ну и длиннющее же у вас имя!");
} else {
console.log("Имя у вас не из длинных.");
}
Этот код делает практически то же, что и раньше, однако, если
имя (name) не длиннее 6 символов, он выводит другое, альтернативное
сообщение.
98 Часть I. Основы
Как видно по рис. 6.2, конструкция if... else похожа
на конструкцию if, однако у нее целых два тела, между кото-
рыми расположено ключевое слово else. Первое тело будет
выполнено, если условие дает true, иначе выполняется код
второго тела.
Условие (true или false)
Код, который выполняется,
если условие = true
if (condition) {
console.log("Делаем что-то");
} else {
console.log("Делаем что-то другое!");
}
Код, который выполняется,
если условие = false
Рис. 6.2. Общая структура конструкции if... else
Цепочка из конструкций if... else
Зачастую нужно проверить несколько условий и сделать что-то, если
одно из них дает true. Пример: вы пришли в китайский ресторан и выби-
раете, что бы такое съесть. Больше всего вы любите курицу с лимоном
(lemon chicken), и, если она есть в меню, вы ее закажете. Если же ее нет, вы
закажете говядину в соусе из черных бобов (beef with black bean). Однако
если и это блюдо отсутствует, вы остановитесь на свинине в кисло-
сладком соусе (sweet and sour pork). Наконец, в маловероятном случае,
когда нет ни одного из этих блюд, вы закажете рис с яйцом, поскольку
Читать дальше
Конец ознакомительного отрывка
Купить книгу