Урок 5: Управляющие структуры
Управляющие структуры в JavaScript позволяют управлять потоком выполнения программы, принимая решения и выполняя различные блоки кода в зависимости от условий. В этом уроке мы рассмотрим условные операторы (if
, else
, else if
) и тернарный оператор.
Условные операторы
Условные операторы позволяют выполнять определенные блоки кода в зависимости от выполнения условий. Основные условные операторы в JavaScript — это if
, else
и else if
.
if
Оператор if
выполняет блок кода, если условие возвращает true
.
// Пример использования if
let age = 18;
if (age >= 18) {
console.log('You are an adult.');
}
В этом примере блок кода внутри оператора if
выполняется, если переменная age
больше или равна 18.
else
Оператор else
выполняет блок кода, если условие в операторе if
возвращает false
.
// Пример использования else
let age = 16;
if (age >= 18) {
console.log('You are an adult.');
} else {
console.log('You are a minor.');
}
В этом примере блок кода внутри оператора else
выполняется, если переменная age
меньше 18.
else if
Оператор else if
позволяет проверить несколько условий последовательно.
// Пример использования else if
let age = 20;
if (age < 13) {
console.log('You are a child.');
} else if (age < 20) {
console.log('You are a teenager.');
} else {
console.log('You are an adult.');
}
В этом примере проверяются три условия: если возраст меньше 13, выводится сообщение "You are a child"; если возраст меньше 20, выводится сообщение "You are a teenager"; иначе выводится сообщение "You are an adult".
Тернарный оператор
Тернарный оператор является короткой записью для условного оператора if
. Он имеет следующий синтаксис: условие ? выражение1 : выражение2
. Если условие истинно, возвращается значение выражение1
, иначе возвращается значение выражение2
.
// Пример использования тернарного оператора
let age = 22;
let message = (age >= 18) ? 'You are an adult.' : 'You are a minor.';
console.log(message); // You are an adult.
В этом примере переменной message
присваивается значение "You are an adult.", если age
больше или равно 18, иначе присваивается значение "You are a minor.". Результат выводится в консоль.
Примеры использования управляющих структур
Рассмотрим несколько примеров использования условных операторов и тернарного оператора в различных ситуациях.
// Пример 1: Проверка четности числа
let number = 4;
if (number % 2 === 0) {
console.log('The number is even.');
} else {
console.log('The number is odd.');
}
// Пример 2: Определение времени суток
let hour = 14;
let greeting;
if (hour < 12) {
greeting = 'Good morning!';
} else if (hour < 18) {
greeting = 'Good afternoon!';
} else {
greeting = 'Good evening!';
}
console.log(greeting); // Good afternoon!
// Пример 3: Тернарный оператор для проверки возраста
let age = 17;
let canVote = (age >= 18) ? 'Yes, you can vote.' : 'No, you cannot vote.';
console.log(canVote); // No, you cannot vote.
Результат выполнения
You are an adult.
You are a minor.
You are an adult.
The number is even.
Good afternoon!
No, you cannot vote.
Упражнения
Упражнение 1: Проверка температуры
Создайте переменную temperature
и присвойте ей числовое значение. Используйте условные операторы для вывода сообщения в консоль в зависимости от значения температуры: "It's cold" (если температура ниже 10), "It's warm" (если температура от 10 до 25) и "It's hot" (если температура выше 25).
Решение:
// Объявление переменной температуры
let temperature = 22;
if (temperature < 10) {
console.log("It's cold");
} else if (temperature <= 25) {
console.log("It's warm");
} else {
console.log("It's hot");
}
Объяснение: Мы объявили переменную temperature
и присвоили ей значение 22. Затем мы использовали условные операторы if
, else if
и else
для вывода сообщения в зависимости от значения температуры.
Упражнение 2: Проверка баллов
Создайте переменную score
и присвойте ей числовое значение. Используйте тернарный оператор для вывода сообщения "Pass" (если балл 50 и более) или "Fail" (если балл меньше 50).
Решение:
// Объявление переменной баллов
let score = 48;
let result = (score >= 50) ? 'Pass' : 'Fail';
console.log(result); // Fail
Объяснение: Мы объявили переменную score
и присвоили ей значение 48. Затем использовали тернарный оператор для проверки значения переменной и вывода сообщения "Pass" или "Fail" в зависимости от результата проверки.