switch


ES6 switch case

switch语句评估表达式,将表达式的值与case子句匹配并执行与该情况相关的语句。以下是语法。

switch(variable_expression) {
   case constant_expr1: {
      //statements;
      break;
   }
   case constant_expr2: {
      //statements;
      break;
   }
   default: {
      //statements;
      break;
   }

针对交换机中的所有情况,测试variable_expression的值。如果变量匹配其中一种情况,则执行相应的代码块。如果没有大小写表达式与variable_expression的值相匹配,则默认块内的代码将关联。

以下规则适用于switch语句 -

  • switch中可以有任意数量的case语句。
  • case语句只能包含常量。它不能是一个变量或表达式。
  • variable_expression的数据类型和常量表达式必须匹配。
  • 除非在每个代码块之后放置一个中断,否则执行流入下一个块。
  • case表达式必须是唯一的。
  • default块是可选的。

流程图

es6 switch

实例

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

该示例根据常量集合(A,B,C,D和E)验证变量等级的值并执行相应的块。如果变量中的值与上述任何常量不匹配,则将执行默认块。