Ветка кода, на которую перейдет управление при совпадении expression с labelN
statements_def
Ветка кода, которая будет выполнена, если expression не совпадет ни с одним значением labelN
Описание, примеры
Конструкция switch служит для сравнения значения на равенство с различными вариантами.
При этом равенство подразумевается в смысле оператора "==", сравнивать с регулярным выражением или как-то еще switch не умеет.
Если совпадение найдено, то соответствующий код исполняется до оператора break, который прекращает выполнение switch и передает управление дальше.
Пример: обычное применение switch
Выделить все
var a = 2+2switch(a){case3:
alert('Маловато')breakcase4:
alert('В точку!')breakcase5:
alert('Перебор')breakdefault:
alert('Я таких значений не знаю')}
Если оператор break отсутствует, то выполнение продолжается дальше.
Например, предыдущий пример без break:
Пример: switch без break
Выделить все
var a = 2+2switch(a){case3:
alert('Маловато')case4:
alert('В точку!')case5:
alert('Перебор')default:
alert('Я таких значений не знаю')}
При a=4 последовательно будут выполнены операторы:
Выделить все
alert('В точку!')alert('Перебор')alert('Я таких значений не знаю')
Несколько значений case можно группировать.
Пример: группировка case
Выделить все
var a = 2+2switch(a){case4:
alert('Верно!')breakcase3:
case5:
alert('Неверно!')breakdefault:
alert('Я таких значений не знаю')}
Это интересно
Слово «гик» (англ. «Geek») произошло от немецкого слова «geck», означающего сумасшедшего человека в странствующем цирке. Традиционно в гик-шоу участвовал артист, который откусывал голову живым цыплятам. В современном смысле, слово «гик» появилось в коротком рассказе американского писателя Роберта Хайнлайна «Год Джекпота», а в 1980-х годах его использовали, чтобы охарактеризовать социально неприспособленных детей, увлеченных технологиями. Это поколение технологически подкованных молодых людей дало начало первому поколению интернет миллионеров и даже миллиардеров гиков.