在JavaScript中,switch...case
语句是一种流程控制结构,用于基于不同的条件执行不同的代码块。其基本语法结构如下:
switch(expression) {
case value1:
// 当 expression 等于 value1 时执行的代码
break;
case value2:
// 当 expression 等于 value2 时执行的代码
break;
// ... 可以有任意数量的 case
default:
// 当 expression 不等于任何 case 值时执行的代码
}
expression
是要被评估的表达式,其结果会与每个 case
后的值进行比较。value1
, value2
, ... 是与 expression
进行比较的值。break
语句用于终止 switch
语句的执行,并跳出该结构,防止执行多个 case
中的代码。default
是可选的,当 expression
不匹配任何 case
时执行。switch...case
结构比多个 if...else
更具可读性。switch...case
的性能可能优于多个 if...else
,尤其是当有大量条件时。假设你有一个表示星期的变量 day
,你想根据这个变量打印出不同的消息。
let day = 3;
switch(day) {
case 1:
console.log("星期一");
break;
case 2:
console.log("星期二");
break;
case 3:
console.log("星期三");
break;
// ... 其他星期
default:
console.log("无效的星期");
}
在这个例子中,因为 day
等于 3,所以会打印出 "星期三"。
break
:如果在 case
语句后忘记写 break
,JavaScript会继续执行下一个 case
的代码,这被称为“case”穿透。为避免这种情况,确保在每个 case
后都加上 break
。default
语句的使用:虽然 default
是可选的,但在处理可能未知的值时,使用 default
可以增加代码的健壮性。switch...case
是严格相等(===
)比较,所以要注意数据类型的匹配。例如,字符串 "1" 和数字 1 是不相等的。领取专属 10元无门槛券
手把手带您无忧上云