二十五岁时我们都一样愚蠢、多愁善感,喜欢故弄玄虚,可如果不那样的话,五十岁时也就不会如此明智。
标题:JavaScript switch
switch 语句用于根据不同的条件执行不同的操作。
JavaScript Switch 语句
使用switch语句选择要执行的多个代码块中的一个.
语法
switch(expression) { case n: code block break; case n: code block break; default: default code block }这就是它的工作原理:
- switch 表达式求值一次.
- 表达式的值与每个case的值进行比较。.
- 如果有匹配,则执行相关的代码块.
getDay() 方法返回一周0到6之间的数字.
(Sunday=0, Monday=1, Tuesday=2 ..)
本例使用的工作日数计算星期的名称:
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 关键字
当JavaScript达到一个break的关键词,它会跳出代码块.
这将停止在块内执行更多的代码和案例测试.
当找到一个匹配,工作完成后,它跳出。如果没有,继续进行更多的测试.
一个break可以节省大量的执行时间,因为它忽略了break开关块中所有其他代码都要执行。
在最后一个case块中没有必要使用break,因为无论如何它都会退出。
default 关键字
default 关键字指定在没有匹配的情况下运行的代码:
getDay() 方法返回一周0到6之间的数字.
如果今天不是星期六(6),也不是星期日(0),写一个default信息:
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"; }default 不一定放到最后一个语句块:
switch (new Date().getDay()) { default: text = "Looking forward to the Weekend"; break; case 6: text = "Today is Saturday"; break; case 0: text = "Today is Sunday"; }如果default不是开关块中的最后一个实例,请记住以break结束默认情况
相同的代码块
有时你会希望不同的开关情况下使用相同的代码.
在本例中,案例4和5共享相同的代码块,而0和6共享另一个代码块:
switch (new Date().getDay()) { case 4: case 5: text = "Soon it is Weekend"; break; case 0: case 6: text = "It is Weekend"; break; default: text = "Looking forward to the Weekend"; }