Оператор switch JavaScript - httpdoc.ru

Оператор switch в JavaScript

Оператор выбора JavaScript: switch..case оператор является альтернативой if...else if...else оператору. Он проверяет переменную или выражение на предмет ряда значений, которые будут определены как разные случаи. Для каждого случая будет определен соответствующий блок кода, и если значение переменной соответствует какому-либо случаю, то будет выполнен блок кода после этого случая.


Он похож на оператор else if, который мы узнали на предыдущей странице , но он удобнее, чем if..else..if, потому что его можно использовать с числами, символами и т. Д.

Синтаксис
switch (выражение) 
{ 
case value1: 
// код для выполнения 
break; 
case value2: 
// код для выполнения 
break; 
...... по 
умолчанию: 
код, который будет выполняться, если не совпадают все варианты; 
}

Пример
<!DOCTYPE html>
<html lang="en">
<head>
   <meta charset="UTF-8">
   <title> JavaScript If Else If Statement </title> 
</head> 
<body>
<script>  
var favcolor='red';  
var result;  
switch (favcolor) {
    case "red":
       result="Your favorite color is red!";
        break;
    case "blue":
        result="Your favorite color is blue!";
        break;
    case "green":
       result="Your favorite color is green!";
        break;
    default:
        result="Your favorite color is neither red, blue, nor green!";
}
document.write(result);  
</script> 
	</body>
</html>

Выход

JavaScript If Else If Statement Example Ваш любимый цвет - красный!

Примечание. В операторе switch ... case значение выражения или переменной сравнивается со значением case с использованием оператора строгого равенства (===), т.е. типы данных также сравниваются. Это означает, что если x = "0" (строка), он не соответствует регистру 0 (int) :, потому что их типы данных не равны.

В операторе switch, если он находит совпадение в каком-то случае, то будет выполнен не только блок кода этого «case», но и весь следующий за ним код других вариантов. Чтобы предотвратить это, вы должны включать break заявление после каждого случая. Оператор break остановит выполнение оператора switch после выполнения указанного случая, и никакой другой случай не будет выполняться автоматически.


Этот break оператор не требуется для default предложения, когда он, наконец, появляется в операторе switch. Как бы то ни было, в конце концов, это не нужно завершать break оператором. Но рекомендуется также завершить последний регистр или предложение по умолчанию в операторе switch с помощью break .

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

Вот пример:
Пример
<!DOCTYPE html>
<html lang="en">
<head>
   <meta charset="UTF-8">
   <title> JavaScript Switch Case </title> 
</head> 
<body>
 <script>
 var d = new Date();

 switch(d.getDay()) {
  default: 
  document.write("Looking forward to the weekend.");
  break;
  case 6:
  document.write("Today is Saturday.");
  break; 
  case 0:
  document.write("Today is Sunday.");
	}
</script>
</body>
</html>

Выход

JavaScript Switch Case С нетерпением жду выходных.

Совместное использование одного и того же действия в нескольких случаях

Если вы хотите выполнить один и тот же блок кода для более чем одного случая, вам необходимо внести некоторые незначительные изменения, как описано в примере ниже. В этом примере каждое значение case уникально в операторе switch, но один и тот же блок кода используется в нескольких случаях.

Пример
<!DOCTYPE html>
<html lang="en">
<head>
   <meta charset="UTF-8">
   <title> JavaScript Multiple Switch Case </title> 
</head> 
<body>
  <script>
  var x = new Date();

 switch(x.getDay()) {
  case 1:
  case 2:
  case 3:
  case 4:
  case 5:
   document.write("It is a weekday.");
  break; 
  case 0:
  case 6:
   document.write("It is a weekend day.");
  break;
  default: 
   document.write("Enjoy every day of your life.");
	}
</script>
</body>
</html>

Выход

JavaScript Multiple Switch Case Examples Сегодня будний день.