📔 День 4
Условные операторы
Условные операторы используются для принятия решения на основе различных условий. По умолчанию операторы в скрипте JavaScript выполняются последовательно сверху вниз. Если логика обработки требует этого, последовательный поток выполнения может быть изменен двумя способами:
- Условное выполнение: блок из одного или нескольких операторов будет выполнен, если определенное выражение истинно
- Повторное выполнение: блок из одного или нескольких операторов будет выполняться повторно, если определенное выражение истинно. В этом разделе мы рассмотрим операторы
if
,else
,else if
. Здесь будут полезны сравнение и логический оператор, который мы изучили в предыдущих разделах.
Условия могут быть реализованы следующими способами:
- if
- if else
- if else if else
- switch
- ternary operator
if
В JavaScript и других языках программирования ключевое слово if
используется, чтобы проверить, выполняется ли условие и выполнить код блока. Чтобы создать условие if
, нам нужно ключевое слово if
, условие внутри скобки и блок кода внутри фигурной скобки ({}).
Пример:
let num = 3;
if (num > 0) {
console.log(`${num} это положительное число`);
}
// 3 это положительное число
Как видно из вышеприведенного условия, 3 больше 0 и является положительным числом. Условие было выполнено, и код блока был выполнен. Однако, если условие ложно, мы не видим результат. То же самое касается второго условия, если isRaining равен false
, блок if
не будет выполнен, и мы не увидим вывод. Чтобы увидеть результат ложного условия, у нас должен быть еще один блок, который будет else
.
if else
Если условие истинно, первый блок будет выполнен, если нет, будет выполнено условие else.
// синтаксис
if (condition) {
// эта часть кода работает для истинного состояния
} else {
// эта часть кода выполняется для ложного условия
}
let num = 3;
if (num > 0) {
console.log(`${num} это положительное число`);
} else {
console.log(`${num} отрицательное число`);
}
// 3 это положительное число
num = -3;
if (num > 0) {
console.log(`${num} это положительное число`);
} else {
console.log(`${num} это отрицательное число`);
}
// -3 это отрицательное число
let isRaining = true;
if (isRaining) {
console.log("Тебе нужен плащ от дождя..");
} else {
console.log("Не нужно пальто от дождя.");
}
// Тебе нужен плащ от дождя.
isRaining = false;
if (isRaining) {
console.log("Тебе нужен плащ от дождя..");
} else {
console.log("Не нужно пальто от дождя.");
}
// Не нужно пальто от дождя.
Вышеуказанное условие ложно, поэтому был выполнен блок else
. Как насчет, если наше условие больше двух, мы будем использовать else if
условия.
if else if else
В нашей повседневной жизни мы принимаем решения ежедневно. Мы принимаем решение не проверяя одно или два условия, а принимаем решения на основе нескольких условий. Как и в нашей повседневной жизни, программирование также полно условий. Мы используем else if
, когда у нас есть несколько условий.
Пример:
let a = 0;
if (a > 0) {
console.log(`${a} это положительное число`);
} else if (a < 0) {
console.log(`${a} это отрицательное число`);
} else if (a == 0) {
console.log(`${a} это 0`);
} else {
console.log(`${a} это не число`);
}
// if else if else
let weather = "солнечно";
if (weather === "дождливо") {
console.log("Вам нужен плащ от дождя.");
} else if (weather === "облачно") {
console.log("Может быть холодно, тебе нужен пиджак.");
} else if (weather === "солнечно") {
console.log("Выйди свободным.");
} else {
console.log("Не нужно пальто от дождя.");
}
Switch
Переключатель является альтернативой для if else if else else
.
Оператор switch
начинается с ключевого слова switch
, за которым следуют скобки и блок кода. Внутри блока кода у нас будут разные случаи (case). Блок case выполняется, если значение в скобках оператора switch
совпадает со значением case. Операртор break
служит для прерывания выполнения, чтобы выполнение кода не прекратилось после выполнения условия. Блок default
выполняется, если все случаи не удовлетворяют условию.
let weather = "облачно";
switch (weather) {
case "дождливо":
console.log("Вам нужен плащ от дождя.");
break;
case "облачно":
console.log("Может быть холодно, тебе нужен пиджак.");
break;
case "солнечно":
console.log("Выйди свободно.");
break;
default:
console.log("Не нужно пальто от дождя.");
}
// Switch больше примеров
let dayUserInput = prompt("Какой сегодня день ?");
let day = dayUserInput.toLowerCase();
switch (day) {
case "понедельник":
console.log("Сегодня понедельник");
break;
case "вторник":
console.log("Сегодня вторник");
break;
case "среда":
console.log("Сегодня среда");
break;
case "четверг":
console.log("Сегодня четверг");
break;
case "пятница":
console.log("Сегодня пятница");
break;
case "суббота":
console.log("Сегодня суббота");
break;
case "воскресенье":
console.log("Сегодня воскресенье");
break;
default:
console.log("Это не день недели.");
}
Тернарный оператор
Другой способ написания условных выражений - использование тернарных операторов. Мы уже рассматривали этот способ в других разделах, но нам следует также упомянуть о нем здесь.
let isRaining = true;
isRaining
? console.log("You need a rain coat.")
: console.log("No need for a rain coat.");
🌕 Вы необыкновенный и у вас есть замечательный потенциал. Вы только что выполнили четвертый день испытаний и прошли четыре шага на пути к успеху. Теперь сделайте несколько упражнений для вашего мозга и ваших мышц.
💻 Упражнения
Упражнения: уровень 1
- Получить пользовательский ввод с помощью
prompt("Введите свой возраст:")
. Если пользователю 18 лет или больше, вывести сообщение: вы достаточно взрослый, чтобы ездить, но если меньше 18 - выведете сообщение,в котором говорится что нужно подождать определённое количество лет, чтобы водить машину.
Введите свой возраст: 30
Вы достаточно взрослый, чтобы водить.
Введите свой возраст: 15
Вам осталось 3 года до вождения.
- Сравните значения myAge и yourAge с помощью if ... else. На основе сравнения выведите результат в консоль, указав, кто старше (я или вы). Используйте prompt("Enter your age:") для получения возраста в качестве входных данных.
-
Если a больше, чем b, вернуть «a больше, чем b», иначе «a меньше, чем b». Попробуйте реализовать это различными способами:
-
используя if else
- тернарный оператор.
- Чётные числа делятся на 2, а остаток равен нулю. Как проверить, является ли число чётным или нет с помощью JavaScript?
Упражнения: уровень 2
- Напишите код, который может дать оценку студентам в соответствии с их баллами:
- 80-100, A
- 70-79, B
- 60-69, C
- 50-59, D
- 0-49, F
- Проверьте, является ли сезон: осенью, зимой, весной или летом. Если пользователь ввёл :
- сентябрь, октябрь или ноябрь, сезон осень.
- декабрь, январь или февраль, сезон зима.
- март, апрель или май, сезон весна
- июнь, июль или август, сезон лето
- Проверьте, является ли день выходным или рабочим днем. Ваш сценарий примет день как вход.
Какой сегодня день? Суббота
Суббота - выходной день.
Какой сегодня день? СубБоТта
Суббота - выходной день.
Какой сегодня день? Пятница
Пятница рабочий день.
Какой сегодня день? ПяТНИца
Пятница рабочий день.
Упражнения: уровень 3
- Напишите программу, которая сообщает количество дней в месяце.
Введите месяц: январь
В январе 31 день.
Введите месяц: ЯНВАРЬ
В январе 31 день
Введите месяц: февраль
Февраль имеет 28 дней.
Введите месяц: феВРаль
Февраль имеет 28 дней.
🎉 ПОЗДРАВЛЯЕМ ! 🎉