JavaScript中switch语句的用法详解
2015-06-03 00:00
791 查看
可以使用多个if... else if语句,如前面的章节,执行多路分支。然而,这并不总是最佳的解决方案,尤其是当所有分支的依赖单一的变量的值。
使用JavaScript1.2开始,你可以用它处理的正是这种情况,使用一个switch语句,它这样做更有效,如果不是反复地使用if... else if语句。
语法
switch语句的基本语法给出一个expression ,以评估计算几种不同的语句基于该表达式的值来执行。解释器检查对表达式的值的每一种情况,直到找到一个匹配。如果没有匹配,则缺省(default)条件将被使用。
switch (expression) { case condition 1: statement(s) break; case condition 2: statement(s) break; ... case condition n: statement(s) break; default: statement(s) }
break语句指示的解释器是特定情况下结束。如果它们被省略,则解释器将继续在以下每个情况(case)执行每个语句。
我们将解释break语句在循环控制这一章。
例子:
下面的例子说明了一个基本的while循环:
<script type="text/javascript"> <!-- var grade='A'; document.write("Entering switch block<br />"); switch (grade) { case 'A': document.write("Good job<br />"); break; case 'B': document.write("Pretty good<br />"); break; case 'C': document.write("Passed<br />"); break; case 'D': document.write("Not so good<br />"); break; case 'F': document.write("Failed<br />"); break; default: document.write("Unknown grade<br />") } document.write("Exiting switch block"); //--> </script>
这将产生以下结果:
Entering switch block Good job Exiting switch block
例子:
考虑这样一种情况,如果不使用break语句:
<script type="text/javascript"> <!-- var grade='A'; document.write("Entering switch block<br />"); switch (grade) { case 'A': document.write("Good job<br />"); case 'B': document.write("Pretty good<br />"); case 'C': document.write("Passed<br />"); case 'D': document.write("Not so good<br />"); case 'F': document.write("Failed<br />"); default: document.write("Unknown grade<br />") } document.write("Exiting switch block"); //--> </script>
这将产生以下结果:
Entering switch block Good job Pretty good Passed Not so good Failed Unknown grade Exiting switch block
相关文章推荐
- 详解JavaScript的while循环的使用
- JavaScript中for循环的使用详解
- 讲解JavaScript中for...in语句的使用方法
- 详解JavaScript中循环控制语句的用法
- 利用js实现禁止复制文本信息
- JS实现窗口加载时模拟鼠标移动的方法
- JSTL核心标签库
- JavaScript模板引擎实现数据交互
- 数据类型回顾之parseIng&parseFloat——JS学习笔记2015-6-2(第46天)
- ajaxfileupload.js插件结合一般处理文件实现Ajax无刷新上传
- html5 EvnetSource 与 JSP页面结合使用
- JSON和JSONP的区别
- js输出单一字符字串
- JS浮点数运算Bug
- JavaScript重复元素处理
- js操作cookie
- javascript实现ajax
- javascript判断浏览器类型
- js定位navigator.geolocation
- JavaScript中document.cookie