JavaScript switch 语句
switch 语句用于基于不同的条件来执行不同的动作
浏览器支持
支持 | 支持 | 支持 | 支持 | 支持 |
语法
switch( expression ) { case n : /*代码块*/ break; case n : /*代码块*/ break; default: /*默认代码块*/ }
参数值
参数 | 描述 |
---|---|
expression | 必须。指定计算的表达式。表达式只计算一次。表达式的值会与结构中的每个 case 的值做比较。如果存在匹配,则与该 case 关联的代码块会被执行 |
说明
switch 语句是 JavaScript 条件语句的一部分,用于根据不同的条件执行不同的动作
使用 switch 从多个语句块中选择一个执行
switch 语句计算每个表达式。随后表达式的值会与结构中的每个 case 的值做比较。如果存在匹配,则与该 case 关联的代码块会被执行
switch 语句通常与 break 或 default 关键字一起使用。两者都是可选的
break 关键字用于跳出switch代码块。会终止 switch 代码块的执行。如果忽略该关键字,swith 语句的下一个代码块会被执行
default 关键字 来规定匹配不存在时做的事情
default 关键字在 switch 语句中只能出现一次。虽然是可选参数,但是建议都使用该参数,在不是我们期望的情况下,可以使用它输出信息。
范例
显示今日的周名称 (Sunday=0, Monday=1, Tuesday=2, ...)
var day; switch (new Date().getDay()) { case 0: day = "Sunday"; break; case 1: day = "Monday"; break; case 2: day = "Tuesday"; break; case 3: day = "Wednesday"; break; case 4: day = "Thursday"; break; case 5: day = "Friday"; break; case 6: day = "Saturday"; break; }
范例
如果今天不是 Saturday ,也不是 Sunday, 则输出默认信息
var text; switch (new Date().getDay()) { case 6: text = "Today is Saturday"; break; case 0: text = "Today is Sunday"; break; default: text = "Looking forward to the Weekend"; }
范例
case 中使用了共同的代码,default 语句并不在 swith 语句的最后面
var text; switch (new Date().getDay()) { case 1: case 2: case 3: default: text = "Looking forward to the Weekend"; break; case 4: case 5: text = "Soon it is Weekend"; break; case 0: case 6: text = "It is Weekend"; }
范例
使用 switch 语句执行用户输入内容的判断
var text; var favDrink = prompt("你最喜欢的鸡尾酒饮料?"); switch(favDrink) { case "Martini": text = "最佳选择!Martini 是好你的灵魂。 "; break; case "Daiquiri": text = "Daiquiri 也是我喜欢的!"; break; case "Cosmopolitan": text = "真的吗? 你确定Cosmopolitan是你的最爱 ?"; break; default: text = "我没有喜欢的……"; break; }
相关页面
JavaScript 基础教程: JavaScript If...Else 语句
JavaScript 基础教程: JavaScript Switch 语句
JavaScript 参考手册: JavaScript if/else 语句