Справочник Javascript
|
switchСравнивает значение выражения по различными вариантами и при совпадении выполняет соответствующий код
Синтаксис
Выделить все
switch (expression) {
case label1:
statements1
[break]
case label2:
statements2
[break]
...
case labelN:
statementsN
[break]
default:
statements_def
[break]
}
Аргументы
- expression
- Выражение для сравнения
- labelN
- Значение, с которым сравнивать
- statementsN
- Ветка кода, на которую перейдет управление при совпадении
expression с labelN
- statements_def
- Ветка кода, которая будет выполнена, если
expression не совпадет ни с одним значением labelN
-
Описание, примеры
Конструкция switch служит для сравнения значения на равенство с различными вариантами.
При этом равенство подразумевается в смысле оператора "==", сравнивать с регулярным выражением или как-то еще switch не умеет.
Если совпадение найдено, то соответствующий код исполняется до оператора break, который прекращает выполнение switch и передает управление дальше.
Пример: обычное применение switch
Выделить все
var a = 2+2
switch (a) {
case 3:
alert('Маловато')
break
case 4:
alert('В точку!')
break
case 5:
alert('Перебор')
break
default:
alert('Я таких значений не знаю')
}
Если оператор break отсутствует, то выполнение продолжается дальше.
Например, предыдущий пример без break :
Пример: switch без break
Выделить все
var a = 2+2
switch (a) {
case 3:
alert('Маловато')
case 4:
alert('В точку!')
case 5:
alert('Перебор')
default:
alert('Я таких значений не знаю')
}
При a=4 последовательно будут выполнены операторы:
Выделить все
alert('В точку!')
alert('Перебор')
alert('Я таких значений не знаю')
Несколько значений case можно группировать.
Пример: группировка case
Выделить все
var a = 2+2
switch (a) {
case 4:
alert('Верно!')
break
case 3:
case 5:
alert('Неверно!')
break
default:
alert('Я таких значений не знаю')
}
|
Дежурная шуткаПереписка по ICQ:
- Продаю "Запорожец".
- Сколько?
- Один.
- Стоит сколько?
- Уже 2 года стоит. В гараже.
|