JavaScript 条件判断可以使用多个if…Else…if语句用于执行多路分支。但这并不总是最好的解决方案,特别是当所有分支都依赖于单个变量的值时。从JavaScript 1.2开始,可以使用一个switch case语句来处理这种情况,而不用重复if…else if语句。本文主要介绍JavaScript switch case语句。

1、switch case流程图

switch case语句的执行流程,如下图,
httpswwwcjavapycom

语法

switch语句的目的是根据表达式的值给出一个要计算的表达式和几个要执行的不同语句。解释器会根据表达式的值判断每种case,直到找到匹配的case。如果没有匹配,将使用default默认条件。

switch (expression) {
   case condition 1: 代码 
   break;
   case condition 2: 代码
   break;
   ...
   case condition n: 代码
   break;
   default: 代码
}

break语句表示特定情况的结束。如果它们被省略,解释器将在以下每种case下继续执行每条语句。

例如,

var lang = 'JavaScript';
console.log("switch begin");
switch (lang) {
   case 'C': console.log("C");
   break;
   case 'Java': console.log("Java");
   break;
   case 'Python': console.log("Python");
   break;
   case 'JavaScript': console.log("JavaScript");
   break;
   case 'cjavapy': console.log("cjavapy");
   break;
   default:  console.log("Unknown")
}
console.log("switch end");

break语句在switch-case语句中起主要作用。可以尝试使用switch-case语句而不使用break语句的代码。

例如,

var lang = 'JavaScript';
console.log("switch begin");
switch (lang) {
   case 'C': console.log("C");
   case 'Java': console.log("Java");
   case 'Python': console.log("Python");
   case 'JavaScript': console.log("JavaScript");
   case 'cjavapy': console.log("cjavapy");
   default:  console.log("Unknown")
}
console.log("switch end");

推荐文档