Суббота, 20.04.2024, 04:12
Приветствую Вас Гость

Меню сайта
Web-программирование
Наш опрос
Какой браузер Вы используете?
Всего ответов: 1422
Статистика

Анализ веб сайтов

switch

Сравнивает значение выражения по различными вариантами и при совпадении выполняет соответствующий код

Синтаксис


01switch (expression) {
02   case label1:
03      statements1
04      [break]
05   case label2:
06      statements2
07      [break]
08   ...
09   case labelN:
10      statementsN
11      [break]
12   default:
13      statements_def
14      [break]
15}

Аргументы

expression
Выражение для сравнения
labelN
Значение, с которым сравнивать
statementsN
Ветка кода, на которую перейдет управление при совпадении expression с labelN
statements_def
Ветка кода, которая будет выполнена, если expression не совпадет ни с одним значением labelN

Описание, примеры

Конструкция switch служит для сравнения значения на равенство с различными вариантами.

При этом равенство подразумевается в смысле оператора "==", сравнивать с регулярным выражением или как-то еще switch не умеет.

Если совпадение найдено, то соответствующий код исполняется до оператора break, который прекращает выполнение switch и передает управление дальше.

Пример: обычное применение switch

01var a = 2+2
02switch (a) {
03  case 3:
04    alert('Маловато')
05    break
06  case 4:
07    alert('В точку!')
08    break
09  case 5:
10    alert('Перебор')
11    break
12  default:
13    alert('Я таких значений не знаю')
14}

Если оператор break отсутствует, то выполнение продолжается дальше.

Например, предыдущий пример без break:

Пример: switch без break

01var a = 2+2
02switch (a) {
03  case 3:
04    alert('Маловато')
05  case 4:
06    alert('В точку!')
07  case 5:
08    alert('Перебор')
09  default:
10    alert('Я таких значений не знаю')
11}

При a=4 последовательно будут выполнены операторы:


1alert('В точку!')
2 
3alert('Перебор')
4 
5alert('Я таких значений не знаю')

Несколько значений case можно группировать.

Пример: группировка case

01var a = 2+2
02switch (a) {
03  case 4:
04    alert('Верно!')
05    break
06  case 3:
07  case 5:
08    alert('Неверно!')
09    break
10  default:
11    alert('Я таких значений не знаю')
12}
Реклама
Поиск
Друзья сайта
Топ100- Веб-дизайн free counters