От автора: оператор TypeScript switch оценивает выражение, сравнивает значение выражения с условием case и выполняет операторы, которые связаны с case.
Синтаксис
switch(variable_expression) { case constant_expr1: { //операторы; break; } case constant_expr2: { // операторы; break; } default: { // операторы; break; } }
Значение выражения переменной проверяется относительно всех операторов case в операторе switch. Если переменная совпадает с одним из условий case, то выполняется соответствующий блок кода. Если ни один case не совпадает со значением выражения переменной, значит происходит сопоставление с кодом внутри блока по умолчанию.
К оператору switch применяются следующие правила:
Внутри оператора switch может находиться любое количество операторов case.
Операторы case могут содержать только константы. Это не может быть переменная или выражение.
Тип данных выражения переменной и выражения константы должны совпадать.
Если вы не поставите разрыв после каждого блока кода, выполнение перейдет к следующему блоку.
Выражение case должно быть уникальным.
Блок по умолчанию не является обязательным.
Структурная схема
Пример: switch…case
var grade:string = "A"; switch(grade) { case "A": { console.log("Excellent"); break; } case "B": { console.log("Good"); break; } case "C": { console.log("Fair"); break; } case "D": { console.log("Poor"); break; } default: { console.log("Invalid choice"); break; } }
Данный код проверяет значение оценки в переменной в отношении набора констант (A, B, C, D и E) и выполняет соответствующие блоки. Если значение переменной не совпадает ни с одной вышеупомянутой константой, будет выполняться блок по умолчанию. После компиляции мы получим следующий код JavaScript:
//Сгенерировано посредством typescript 1.8.10 var grade = "A"; switch (grade) { case "A": { console.log("Excellent"); break; } case "B": { console.log("Good"); break; } case "C": { console.log("Fair"); break; } case "D": { console.log("Poor"); break; } default: { console.log("Invalid choice"); break; } }
Этот код дает следующий результат: Excellent
Источник: https://www.tutorialspoint.com/
Редакция: Команда webformyself.