js中switch case语句的用法总结
选择执行若干代码块中的一个,用于完成基于不同条件的行为。
语法
switch(n-表达式或单个变量){
case 1:
执行代码块 1
break
case 2:
执行代码块 2
break
default:
如果n既不是1也不是2,则执行此代码
}
工作原理:
switch 后面的 (n) 是需要匹配的参数,可以是表达式,也可以(并通常)是变量。
然后表达式中的值会与 case 中的数字作比较,如果与某个 case 相匹配,那么其后的代码就会被执行。
break 的作用是防止代码自动执行到下一行。如果 JavaScript 遇到 break
关键词,它会跳出 switch 代码块。
default 关键词是默认模块,规定不存在 case 匹配时所运行的代码。
代码解释:
计算一次 switch 表达式
把表达式的值与每个 case 的值进行对比
如果存在匹配,则执行关联代码
实例1
getDay() 方法返回 0 至 6 的数字周名。
如果今日既不是周六(6)也不是周日(0),则输出一段默认消息:
switch (new Date().getDay()) {
case 6:
text = "今天是周六";
break;
case 0:
text = "今天是周日";
break;
default:
text = "期待周末a~";
}
text 的结果是:
期待周末a~
实例2
1、用 Switch 重写多个 If 语句
var a = 100;
var b = NaN;
switch (true) { // 进入判断逻辑
case isNaN(a) || isNaN(b): // 添加判断逻辑
console.log('NaNNaNa');
break;
case a === b:
console.log(0);
break;
case a < b:
console.log(-1);
break;
default:
console.log(1);
}
// 显示 NaNNaNa
2、多case,单操作
默认的switch case语句是一个case判断一个值,如果需要一个case判断多个值,可以这么写
//JS中switch case,多个case对应同一操作的写法
var code = "1";
var num = 2;
switch (code) {
case '1': case '2': // 多个case对应同一个操作
console.log('1,2');
num = 3;
break
case '3':default:
console.log('0')
num = 0;
break
}
// 显示 '1,2'