switch
从根本上来讲,switch 语句就是为了让开发人员免于编写像下面的代码:
if (i == 1) {
} else if (i == 2) {
} else if (i == 3) {
} else {
}
break#
每个 case 后面都添加一个 break 语句,就可以避免执行多个 case,倘若漏写了 break, 那么代码将继续往下执行,像这样:
运行结果将弹出 1
2
3
。
var i = 1;
switch (i) {
case 1:
alert(1);
case 2:
alert(2);
case 3:
alert(3);
break;
default:
alert("other");
break;
}
但如果你是有意忽略 break,不要忘了添加注释。
switch (i) {
case 1:
/*合并两种情形*/
case 2:
alert(2);
break;
case 3:
alert(3);
break;
default:
alert("other");
break;
}
switch 语句在比较值使用的是全等操作符#
switch 语句在比较值使用的是全等操作符,因此不会发生类型转换(例如字符串 "1"
不等于数值 1
)。
对于复杂的比较,还可以这样写:
var i = 98;
switch (true) {
case i < 60:
alert('不及格');
break;
case i >= 60:
alert('及格');
break;
default:
break;
}