4.8.6 JavaScript switch...case语句
- JavaScript的switch语句为多分支选择语句
- JavaScript的switch语句类似于if语句的语法3 -- 多重if_else语句
switch语句语法
switch(条件表达式){case常量:{语句a;}case常量:{语句b;}case常量:{语句c;}...case常量:{语句f;}default:{语句n;}}
switch语句语法说明
- 顺序执行case后面的每个语句,最后执行default下面的语句n
- 每个case后面的语句可以是多条,但要使用{}包括
- 每个case后面的值必须互不相同。
示例
vara=3;switch(a){case0:{document.write("www");}case1:{document.write("dreamdu");}case2:{document.write("com");}case3:{document.write("www.dreamdu.com");}default:{document.write("http://www.dreamdu.com");}}
结果
www.dreamdu.com http://www.dreamdu.com
完整的switch语句语法
上面的结果通常不是我们想要的,如果执行完某个case后面的语句,应该跳出switch语句,这才是真正的switch多分支选择语句。可以在每个分支后面加上break(跳出),后面章节将介绍break。
switch(条件表达式){case常量:{语句a;}break;case常量:{语句b;}break;case常量:{语句c;}break;...case常量:{语句f;}break;default:{语句n;}}
当"表达式"的值与某个case后面的常量相等时,就执行常量后面所执行的语句,之后跳出switch分支选择语句,当所有的case后面的常量都不符合"表达式"时,执行default后面的语句n。
示例
vara=3;switch(a){case0:{document.write("www");}break;case1:{document.write("dreamdu");}break;case2:{document.write("com");}break;case3:{document.write("www.dreamdu.com");}break;default:{document.write("http://www.dreamdu.com");}}

结果:
www.dreamdu.com
JavaScript switch...case语句示例 -- 可以尝试编辑
猴子提示: case后面一定要是常量(就是一个不可变的量)!
猴子提示: 当条件的分支很多时(通常超过六个)使用switch...case的效率将高于多重if_else语句(在汇编层switch...case是查找表,if语句是跳转:)