8c1dea14

Оператор switch


Оператор switch позволяет программе вычислять выражение и пытается сопоставить значение выражения значению в метке case. Если совпадение найдено, программа выполняет ассоциированный оператор. Оператор switch выглядит так:

switch (expression){

   case label :

      statement;

      break;

   case label :

      statement;

      break;

   ...

   default : statement;

}

Программа сначала ищет label, совпадающий со значением expression, а затем выполняет ассоциированный statement/оператор. Если совпадающий label не найден, программа ищет необязательный default statement/оператор по умолчанию и, если он найден, выполняет ассоциированный оператор. Если default statement не найден, программа продолжает выполнять оператор, следующий после конца оператора switch.


Необязательный оператор break, ассоциированный с меткой case label, гарантирует, что программа прервёт выполнение оператора switch, как только будет выполнен оператор найденного совпадения, и продолжит выполнение с оператора, идущего после оператора switch. Если break отсутствует, программа продолжает выполнение следующего оператора внутри оператора switch.


Пример.

Здесь, если expr вычисляется в "Bananas", программа находит совпадение с case "Bananas" и выполняет ассоциированный оператор. Если обнаружен break, программа прерывает switch и выполняет оператор после блока оператора switch. Если break отсутствует, оператор в case "Cherries" также будет выполнен.

switch (expr) {

   case "Oranges" :

      document.write("Oranges are $0.59 a pound.<BR>");

      break;

   case "Apples" :



      document.write("Apples are $0.32 a pound.<BR>");

      break;

   case "Bananas" :

      document.write("Bananas are $0.48 a pound.<BR>");

      break;

   case "Cherries" :

      document.write("Cherries are $3.00 a pound.<BR>");

      break;

   default :

      document.write("Sorry, we are out of " + i + ".<BR>");

}

document.write("Is there anything else you'd like?<BR>");





Содержание раздела