JavaScript中switch语句的用法详解


Posted in Javascript onJune 03, 2015

 可以使用多个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 相关文章推荐
通过jquery实现tab标签浏览效果
Feb 20 Javascript
jquery插件实现鼠标经过图片右侧显示大图的效果(类似淘宝)
Feb 04 Javascript
a标签的href和onclick 的事件的区别介绍
Jul 26 Javascript
对table和ul实现js分页示例分享
Feb 24 Javascript
JavaScript中的toDateString()方法使用详解
Jun 12 Javascript
js实现跨域的4种实用方法原理分析
Oct 29 Javascript
使用Object.defineProperty实现简单的js双向绑定
Apr 15 Javascript
BootStrap+Mybatis框架下实现表单提交数据重复验证
Mar 23 Javascript
angular 服务随记小结
May 06 Javascript
vue2路由方式--嵌套路由实现方法分析
Mar 06 Javascript
Vue.js中使用Vuex实现组件数据共享案例
Jul 31 Javascript
Kettle中使用JavaScrip调用jar包对文件内容进行MD5加密的操作方法
Sep 04 Javascript
jquery中添加属性和删除属性
Jun 03 #Javascript
JavaScript中的条件判断语句使用详解
Jun 03 #Javascript
简单介绍JavaScript的变量和数据类型
Jun 03 #Javascript
在HTML中插入JavaScript代码的示例
Jun 03 #Javascript
jQuery事件绑定on()、bind()与delegate() 方法详解
Jun 03 #Javascript
在浏览器中打开或关闭JavaScript的方法
Jun 03 #Javascript
浅谈javascript中基本包装类型
Jun 03 #Javascript
You might like
thinkphp 中的volist标签在ajax操作中的特殊性(推荐)
2018/01/15 PHP
PHP之多条件混合筛选功能的实现方法
2019/10/09 PHP
laravel5.6 框架邮件队列database驱动简单demo示例
2020/01/26 PHP
学习YUI.Ext第五日--做拖放Darg&amp;Drop
2007/03/10 Javascript
JavaScript操作XML 使用百度RSS作为新闻源示例
2012/02/17 Javascript
javascript框架设计之框架分类及主要功能
2015/06/23 Javascript
JavaScript鼠标事件,点击鼠标右键,弹出div的简单实例
2016/08/03 Javascript
vue.js入门教程之绑定class和style样式
2016/09/02 Javascript
jquery 实现回车登录详解及实例代码
2016/10/23 Javascript
微信小程序扫描二维码获取信息实例详解
2019/05/07 Javascript
jQuery事件委托代码实践详解
2019/06/21 jQuery
Vue的生命周期操作示例
2019/09/17 Javascript
js实现掷骰子小游戏
2019/10/24 Javascript
Vue的click事件防抖和节流处理详解
2019/11/13 Javascript
keep-alive保持组件状态的方法
2020/12/02 Javascript
[04:15]DOTA2-DPC中国联赛1月19日Recap集锦
2021/03/11 DOTA
Python 12306抢火车票脚本 Python京东抢手机脚本
2018/02/06 Python
浅谈pytorch和Numpy的区别以及相互转换方法
2018/07/26 Python
python得到电脑的开机时间方法
2018/10/15 Python
python写日志文件操作类与应用示例
2019/07/01 Python
Python实现的远程文件自动打包并下载功能示例
2019/07/12 Python
python根据多个文件名批量查找文件
2019/08/13 Python
你可能不知道的Python 技巧小结
2020/01/29 Python
Pyinstaller 打包发布经验总结
2020/06/02 Python
Python lxml库的简单介绍及基本使用讲解
2020/12/22 Python
CSS3 border-image详解、应用及jQuery插件
2011/08/29 HTML / CSS
娇韵诗法国官网:Clarins法国
2019/01/29 全球购物
Berghaus官网:户外服装和设备,防水服
2020/01/17 全球购物
华为C++笔试题
2014/08/05 面试题
高校辅导员推荐信范文
2013/12/25 职场文书
网上卖盒饭创业计划书
2014/01/26 职场文书
《两个铁球同时着地》教学反思
2014/02/13 职场文书
宣传工作经验材料
2014/06/02 职场文书
小学数学教研活动总结
2014/07/01 职场文书
政风行风评议工作总结
2014/10/21 职场文书
安全生产学习心得体会
2016/01/18 职场文书