JavaScript switch语句
-
JavaScript Switch语句
switch语句用于根据不同的条件执行不同的操作。switch语句选择要执行的许多代码块之一。句法switch(expression) { case x: // 代码块 break; case y: // 代码块 break; default: // 代码块 }
这是它的工作原理:- 切换表达式计算一次。
- 将表达式的值与每种情况的值进行比较。
- 如果匹配,则执行相关的代码块。
尝试一下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关键字时,它会跳出switch继续往下执行。 -
default关键字
如果没有匹配的情况下,default关键字指定的代码运行,:
尝试一下switch (new Date().getDay()) { case 6: text = "今天是 Saturday"; break; case 0: text = "今天是 Sunday"; break; default: text = "期待周末"; }
default情况下,不必在切换块的最后一种情况:
尝试一下switch (new Date().getDay()) { default: text = "期待周末"; break; case 6: text = "今天是星期六"; break; case 0: text = "今天是星期日"; }
如果default不是switch中的最后一种情况,请记住以break结束default情况。
-
通用代码块
有时您会希望不同的开关案例使用相同的代码。在此示例中,案例4和5共享相同的代码块,0和6共享另一个代码块:
尝试一下switch (new Date().getDay()) { case 4: case 5: text = "很快就是周末"; break; case 0: case 6: text = "周末"; break; default: text = "期待周末"; }
如果default不是switch中的最后一种情况,请记住以break结束default情况。
-
严格的比较
切换案例使用严格比较(===)。值必须与要匹配的类型相同。只有操作数属于同一类型时,才能进行严格比较。在此示例中,x将不匹配:
尝试一下var x = "0"; switch (x) { case 0: text = "Off"; break; case 1: text = "On"; break; default: text = "找不到值"; }