JavaScript switch
在 JavaScript 中,switch
语句是用来根据表达式的值选择执行不同代码块的一种流程控制语句。它可以替代使用多个 if...else
语句的情况,使代码更加简洁和易于理解。
语法
switch (expression) { case value1: // 执行代码块 1 break; case value2: // 执行代码块 2 break; ... case valueN: // 执行代码块 N break; default: // 如果表达式的值与任何 case 不匹配,则执行 default 中的代码块 }
解释
switch (expression):这里的 expression 是一个表达式,它的值将会与每个 case 的值进行比较。
case valueX:每个 case 后面跟着一个需要与 expression 比较的值。
break;:用来表示每个 case 结束,防止继续向下执行其他 case 或 default 中的代码。
default::如果 expression 的值与所有的 case 不匹配,则执行 default 中的代码。default 是可选的。
示例
let day = 3; let dayName; switch (day) { case 0: dayName = "Sunday"; break; case 1: dayName = "Monday"; break; case 2: dayName = "Tuesday"; break; case 3: dayName = "Wednesday"; break; case 4: dayName = "Thursday"; break; case 5: dayName = "Friday"; break; case 6: dayName = "Saturday"; break; default: dayName = "Invalid day"; } console.log(dayName); // 输出: Wednesday
在这个示例中,变量 day 的值为 3,根据 switch 语句,匹配到 case 3,因此 dayName 被赋值为 "Wednesday"。
注意事项
每个 case 后面的值可以是常量、变量、表达式等。
switch 语句在匹配到第一个符合条件的 case 后会执行相应的代码块,并且在执行完该代码块后会跳出 switch 语句,除非遇到 break; 或者执行到结尾。
如果没有 break;,则会继续执行下一个 case 的代码块,直到遇到 break; 或者结束 switch 语句。
如果所有的 case 都不匹配,且存在 default 分支,则会执行 default 中的代码块。
switch 语句适合用于需要根据某个表达式的值来做出不同选择的情况,比如根据用户输入或者根据程序运行时的状态来执行不同的操作。