使用JavaScript switch case 另类写法


Posted in Javascript onMarch 14, 2010

习惯了C#的语法,遇到多分支调用的情况,除了最简单的if-else,那么就是switch-case了,所以使用JavaScript的时候就很容易会写出下面这样的代码:

// JScript source code 
//something的值是1、2、3... 
switch (something) { 
case 1: 
todoA(); 
break; 
case 2: 
todoB(); 
break; 
case 3: 
todoC(); 
break; 
//... 
}

这样的代码本身也没什么,只是可读性差一些,看起来有点费劲,JavaScript虽然支持switch-case,不过有一种更好的写法值得推广:
// JScript source code 
//something的值是1、2、3... 
var cases = { 
1: todoA, 
2: todoB, 
3: todoC 
}; 
if (cases[something]) { 
cases[something](); 
}

作者:Justin
出处:http://justinw.cnblogs.com/
Javascript 相关文章推荐
使用jQuery快速解决input中placeholder值在ie中无法支持的问题
Jan 02 Javascript
JS中三目运算符和if else的区别分析与示例
Nov 21 Javascript
原生JavaScript制作微博发布面板效果
Mar 11 Javascript
Vue2递归组件实现树形菜单
Apr 10 Javascript
javascript 中select框触发事件过程的分析
Aug 01 Javascript
探讨Vue.js的组件和模板
Oct 27 Javascript
详解vue项目的构建,打包,发布全过程
Nov 23 Javascript
微信小程序中使用ECharts 异步加载数据的方法
Jun 27 Javascript
在vue中使用express-mock搭建mock服务的方法
Nov 07 Javascript
vue百度地图 + 定位的详解
May 13 Javascript
bootstrap-table后端分页功能完整实例
Jun 01 Javascript
javascript进阶篇深拷贝实现的四种方式
Jul 07 Javascript
两个JavaScript jsFiddle JSBin在线调试器
Mar 14 #Javascript
input的focus方法使用
Mar 13 #Javascript
JavaScript prototype对象的属性说明
Mar 13 #Javascript
clientX,pageX,offsetX,x,layerX,screenX,offsetLeft区别分析
Mar 12 #Javascript
JS在IE和FireFox之间常用函数的区别小结
Mar 12 #Javascript
javascript offsetX与layerX区别
Mar 12 #Javascript
jQuery 点击图片跳转上一张或下一张功能的实现代码
Mar 12 #Javascript
You might like
初学者入门:细述PHP4的核心Zend
2006/09/05 PHP
PHP脚本的10个技巧(8)
2006/10/09 PHP
JQuery 学习笔记 选择器之三
2009/07/23 Javascript
JavaScript中null与undefined分析
2009/07/25 Javascript
js以对象为索引的关联数组
2010/07/04 Javascript
js如何获取file控件的完整路径具体实现代码
2013/05/15 Javascript
在AngularJS中使用jQuery的zTree插件的方法
2016/04/21 Javascript
深入理解js函数的作用域与this指向
2016/05/28 Javascript
AngularJS包括详解及示例代码
2016/08/17 Javascript
Javascrip实现文字跳动特效
2016/11/27 Javascript
nodejs爬虫遇到的乱码问题汇总
2017/04/07 NodeJs
JavaScript操作文件_动力节点Java学院整理
2017/06/30 Javascript
vue轮播图插件vue-awesome-swiper
2017/11/27 Javascript
JavaScript事件委托原理与用法实例分析
2018/06/07 Javascript
vue项目中监听手机物理返回键的实现
2020/01/18 Javascript
jQuery实现增删改查
2020/12/22 jQuery
使用python 获取进程pid号的方法
2014/03/10 Python
Python实现统计单词出现的个数
2015/05/28 Python
Python中将字典转换为XML以及相关的命名空间解析
2015/10/15 Python
你应该知道的python列表去重方法
2017/01/17 Python
Python实现简单过滤文本段的方法
2017/05/24 Python
Python比较配置文件的方法实例详解
2019/06/06 Python
python 生成任意形状的凸包图代码
2020/04/16 Python
keras 权重保存和权重载入方式
2020/05/21 Python
Python定时任务APScheduler安装及使用解析
2020/08/07 Python
python tqdm库的使用
2020/11/30 Python
虚拟环境及venv和virtualenv的区别说明
2021/02/05 Python
css3实现文字首尾衔接跑马灯的示例代码
2020/10/16 HTML / CSS
黑猩猩商店:The Chimp Store
2020/02/12 全球购物
一个C/C++编程面试题
2013/11/10 面试题
建筑行业的大学生自我评价
2013/12/08 职场文书
会计求职信范文
2014/05/24 职场文书
授权委托书范文
2014/07/31 职场文书
反对四风问题自我剖析材料
2014/09/29 职场文书
未婚证明书模板
2014/10/08 职场文书
LyScript实现绕过反调试保护的示例详解
2022/08/14 Python