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

См. урок условие if

Синтаксис

switch (переменная) {
	case 'значение 1':
 		этот код выполнится, если переменная имеет значение 1;
	break;
	case 'значение 2':
		если переменная имеет значение 2;
	break;
	...
	case 'значение n':
		если переменная имеет значение n;
	break;
	default:
		если переменная не совпала ни с одним значением;
	break;
}

Указанная переменная проверяется на строгое равенство (===) со всеми значениями. Если соответствие установлено - выполнятся часть кода, между совпавшим case и следующим break (либо до конца switch);

Если же соответствий найдено не было, то выполнится код указанный в default.

Примеры

Пример

В зависимости от ответа будем выводить различные сообщения:

var answer = prompt('Какие вы знаене фрукты', '');

switch (answer.toLowerCase()) 
{
	case 'яблоки':
		alert('Я тоже знаю яблоки. Даже когда-то пробовал');
		break;
	case 'мандарины':
		alert('Слышал о таком');
		break;
	default:
		alert('Это наверное что-то экзотическое?');
}

Результат выполнения кода:

Пример

В зависимости от ответа будем выводить различные сообщения:

var lang = prompt('Какой ваш любымый язык программирования?', '');

switch (lang.toLowerCase()) 
{
	case 'html':
		alert('Какие там новые теги появились?');
		break;
	case 'css':
		alert('Можете напомнить как делать тень?');
		break;
	case 'php':
		alert('Нравится back-end?');
		break;
	case 'js':
	case 'javascript':
		alert('Круто!');
		break;
	case 'русский':
	case 'украинский':
	case 'український':
	case 'английский':
		alert('Это хорошо, но вы что-то перепутали..');
		break;
	default:
		alert('Я такого не знаю..');
}

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

Результат выполнения кода: