Оператор switch — це альтернатива довгим ланцюжкам if/else if, коли потрібно порівнювати одну змінну з кількома конкретними значеннями. Він робить код чистішим та зрозумілішим.
Синтаксис: switch (значення) { case варіант1: код; break; case варіант2: код; break; default: код; }. Ключове слово break зупиняє виконання — без нього код "провалиться" до наступного case. default спрацює, якщо жоден case не підійшов.
Тернарний оператор — це скорочений запис if/else для простих умов. Синтаксис: умова ? значенняЯкщоTrue : значенняЯкщоFalse. Наприклад: let status = age >= 18 ? 'дорослий' : 'дитина'.
Тернарний оператор зручний для коротких перевірок та присвоєнь. Але не варто вкладати тернарні оператори один в одний — це робить код нечитабельним. Для складних умов краще використовувати if/else.
switch використовує строге порівняння (===), тому 1 та '1' — це різні значення. Памʼятайте про це при роботі з різними типами даних.
💡 Приклад коду
Вивід:
📝 ЗАВДАННЯ (3)
1.
Завдання 1: Тернарний оператор
10 XP
Створіть змінну temperature = 30. За допомогою тернарного оператора створіть змінну weather: якщо temperature > 25, то 'спекотно', інакше 'нормально'. Виведіть weather
💡 Підказка: Використайте: let weather = temperature > 25 ? 'спекотно' : 'нормально';
🔓 Розв'язок:
let temperature = 30;
let weather = temperature > 25 ? 'спекотно' : 'нормально';
console.log(weather);
Вивід:
2.
Завдання 2: switch з днями
20 XP
Створіть змінну day = 'середа'. Використайте switch: для 'понеділок'-'пʼятниця' виведіть 'Робочий день', для 'субота','неділя' — 'Вихідний', для іншого — 'Невідомий день'
💡 Підказка: Групуйте case без break для однакового результату. Не забудьте break після console.log
🔓 Розв'язок:
let day = 'середа';
switch (day) {
case 'понеділок':
case 'вівторок':
case 'середа':
case 'четвер':
case 'пʼятниця':
console.log('Робочий день');
break;
case 'субота':
case 'неділя':
console.log('Вихідний');
break;
default:
console.log('Невідомий день');
}
Вивід:
3.
Завдання 3: Оцінка з switch
30 XP
Створіть змінну grade = 'B'. Використайте switch для виводу: 'A' — 'Відмінно', 'B' — 'Добре', 'C' — 'Задовільно', 'D' — 'Погано', default — 'Невідома оцінка'. Потім за допомогою тернарного оператора виведіть 'Склав' якщо grade !== 'D', інакше 'Не склав'
💡 Підказка: Спочатку switch для текстової оцінки, потім тернарний оператор для результату
🔓 Розв'язок:
let grade = 'B';
switch (grade) {
case 'A':
console.log('Відмінно');
break;
case 'B':
console.log('Добре');
break;
case 'C':
console.log('Задовільно');
break;
case 'D':
console.log('Погано');
break;
default:
console.log('Невідома оцінка');
}
console.log(grade !== 'D' ? 'Склав' : 'Не склав');