САЙТ ДЛЯ ВЕБ РАЗРАБОТЧИКОВ НА РУССКОМ ЯЗЫКЕ

JavaScript Заявление switch



Заявление switch используется для выполнения переключения различных действий, основанных на различных условиях.


Переключатель switch

Использовать заявление switch для выбора одного из многих блоков кода для выполнения.

Синтаксис

Переключатель(выражение) {
    случай n:
        блок кода
        перерыв;
    случай n:
        блок кода
        перерыв;
    по умолчанию:
        блок кода
}

Вот как это работает:

  • Заявление switch вычисляется один раз.
  • Значение заявления сравнивается со значениями каждого случая.
  • Если есть совпадение, соответствующий блок кода выполняется.

Метод getDay() возвращает будний день в виде числа от 0 до 6.

(Воскресенье=0, Понедельник=1, Вторник=2 ..)

Пример

В этом примере используется номер дня недели для вычисления имени дня недели:

switch (new Date().getDay()) {
    case 0:
        day = "Воскресенье";
        break;
    case 1:
        day = "Понедельник";
        break;
    case 2:
        day = "Вторник";
        break;
    case 3:
        day = "Среда";
        break;
    case 4:
        day = "Четверг";
        break;
    case 5:
        day = "Пятница";
        break;
    case 6:
        day = "Суббота";
}

Результатом дня будет:

Редактор кода »

Ключевое слово break

Когда JavaScript достигает ключевого слова break, он выходит из блока switch.

Он остановит выполнение кода и тестирование внутри блока.

Когда переключение найдено, и работа сделана, пришло время для перерыва. Больше нет необходимости в тестировании.

break может сэкономить много времени выполнения, потому что он "игнорирует" выполнение всего остального кода в блоке switch.

Не обязательно разбивать последний случай в блоке переключателя. Блок прерывается (заканчивается) в любом случае.


Ключевое слово default

Ключевое слово default указывает код для запуска, если нет совпадения с регистром:

Метод getDay() возвращает будний день в виде числа от 0 до 6.

Пример

Если сегодня не суббота (6) и не воскресенье (0), напишите сообщение по умолчанию:

switch (new Date().getDay()) {
    case 6:
        text = "Сегодня суббота";
        break;
    case 0:
        text = "Сегодня воскресенье";
        break;
    default:
        text = "С нетерпением ждем выходных";
}

Результатом текста будет:

Редактор кода »

case по умолчанию делает, что не должен быть последним случаем в блоке переключателя:

Пример

switch (new Date().getDay()) {
    default:
        text = "С нетерпением ждем выходных";
        break;
   case 6:
       text = "Сегодня суббота";
        break;
   case 0:
        text = "Сегодня воскресенье";
}
Редактор кода »

Если значение по умолчанию не является последним случаем в блоке переключателя, не забудьте завершить случай по умолчанию с перерывом.


Общий блоки кода

Иногда вы захотите, чтобы разные случаи переключения использовали один и тот же код.

В этом примере 4 и 5 совместно используют один и тот же блок кода, а 0 и 6 - другой блок кода:

Пример

switch (new Date().getDay()) {
    case 4:
    case 5:
        text = "Скоро выходные.";
        break;
    case 0:
    case 6:
        text = "Это выходные";
        break;
    default:
        text = "С нетерпением ждем выходных";
}
Редактор кода »

Детали переключения

Если несколько случаев соответствуют значению случая, выбирается первый случай.

Если совпадающие случаи не найдены, программа переходит к метке по умолчанию.

Если метка по умолчанию не найдена, программа переходит к заявлениеам после переключателя.


Строгое сравнение

Случаи переключателя используют строгое сравнение (===).

Для соответствия значения должны быть одного типа, чтобы соответствовать.

Строгое сравнение может быть истинным, только если операнды одного типа.

В этом примере не будет совпадения для x:

Пример

var x = "0";
switch (x) {
    case 0:
        text = "Выключено";
        break;
    case 1:
        text = "Включено";
        break;
    default:
        text = "Значение не найдено";
}
Редактор кода »

Проверьте себя с помощью упражнений!

Упражнение:

Создать заявление switch это предупредит "Привет", если fruits "Банан", и "Добро пожаловать" если fruits "Яблоко".

(fruits) {
 "Банан":
alert("Привет")
break;
 "Яблоко":
alert("Добро пожаловать")
break;    
}

Начать упражнения