switch
Выбирает ветку кода по значению.
Доступно с: ES3
Синтаксис
switch (value) { case a: … break; default: … }Примеры
Выбор по значению:
const day = 'sat';
switch (day) {
case 'sat':
case 'sun':
console.log('weekend');
break;
default:
console.log('weekday');
}Результат:
weekendБез break выполнение «проваливается» дальше:
const level = 1;
switch (level) {
case 1:
console.log('level 1');
case 2:
console.log('level 2');
break;
case 3:
console.log('level 3');
}Результат:
level 1
level 2Примечания
Значения сравниваются строго, как ===: case '1' не сработает для числа 1. Если нужно просто сопоставить значение с результатом, короче использовать объект: const labels = { sat: 'weekend' }.
См. также
- Conditional (ternary) operator — Выбирает одно из двух значений по условию — короткий if...else.
- Strict equality (===) — Сравнивает значения без преобразования типов.
В учебнике
- Конструкция switch — Как выбрать один из многих вариантов с помощью switch в JavaScript — case, break, default и объединение вариантов.