JavaScript Switch 语句的详解
2014-04-27 11:46
369 查看
JavaScript Switch 语句
语法
switch(n) { case 1: 执行代码块 1 break; case 2: 执行代码块 2 break; default: n 与 case 1 和 case 2 不同时执行的代码 }
工作原理:首先设置表达式 n(通常是一个变量)。随后表达式的值会与结构中的每个 case 的值做比较。如果存在匹配,则与该 case 关联的代码块会被执行。请使用 break 来阻止代码自动地向下一个 case 运行。
实例
var day=new Date().getDay(); switch (day) { case 0: x="Today it's Sunday"; break; case 1: x="Today it's Monday"; break; case 2: x="Today it's Tuesday"; break; case 3: x="Today it's Wednesday"; break; case 4: x="Today it's Thursday"; break; case 5: x="Today it's Friday"; break; case 6: x="Today it's Saturday"; break; }
x 的结果:
Today it's Sunday
亲自试一试
default 关键词
请使用 default 关键词来规定匹配不存在时做的事情:
实例
如果今天不是周六或周日,则会输出默认的消息:var day=new Date().getDay(); switch (day) { case 6: x="Today it's Saturday"; break; case 0: x="Today it's Sunday"; break; [code]default: x="Looking forward to the Weekend";
}
[/code]
x 的结果:
Today it's Sunday
亲自试一试
扩展阅读:switch 语句
switch 语句是 if 语句的兄弟语句。开发者可以用 switch 语句为表达式提供一系列的情况(case)。
switch 语句的语法:
switch (expression) case value: statement; break; case value: statement; break; case value: statement; break; case value: statement; break; ... case value: statement; break; default: statement;
每个情况(case)都是表示“如果 expression 等于 value,就执行 statement”。
关键字 break 会使代码跳出 switch 语句。如果没有关键字 break,代码执行就会继续进入下一个 case。
关键字 default 说明了表达式的结果不等于任何一种情况时的操作(事实上,它相对于 else 从句)。
switch 语句主要是为避免让开发者编写下面的代码:
if (i == 20) alert("20"); else if (i == 30) alert("30"); else if (i == 40) alert("40"); else alert("other");
等价的 switch 语句是这样的:
switch (i) { case 20: alert("20"); break; case 30: alert("30"); break; case 40: alert("40"); break; default: alert("other"); }
上面的是js SWITCH语句的一般用法,但是相信很同仁与我一样还想SWITCH语句能作相应的比较判断,
其实这在JS SWITCH语句中是允许的,具体怎么做呢?方法如下:
var s_level=10*Math.random();
switch(true){
case s_level<10 :
alert('less than 10');
break;
case s_level<20 :
alert('less than 20');
break;
default :
alert('More than 20');
}
从上面,可以看出,只要在SWITCH中加上TRUE即可进行比较运算了。
JS SWICTH语句注意点:
1 在SWITCH中没有TRUE参数时,只能是相等判定控制,即“如果 expression 等于 value,就执行 statement”
2 加TRUE参数后,即可进行比较运算控制了。
3 还应注意在“case value:”case与value之间是有空格的,这点要十分注意.
相关文章推荐
- js实现页面跳转的几种方式
- 一个例子明白 javascript 中 for 与 for in 的区别
- js对象内部访问this修饰的成员函数示例
- 《编写可维护的JavaScript》笔记
- extjs xmlStore
- extjs 给column 加上提示
- Js中escape(),encodeURI()和encodeURIComponent()
- javascript-事件代理
- Twproject Gantt – 开源的 JavaScript 甘特图组件
- iframe标签实现form表单提交无页面刷新(不需要js)---解析
- javascript获取客户端默认打印机
- 简单的three.js实例
- js对象内部访问this修饰的成员函数示例
- javascript调用ocx事件的方法
- ExtJS4 表格的嵌套 rowExpander
- 如何正确添加CSS、Javascript 到drupal
- 免费JSON格式的服务接口
- JS实现拖动div层移动
- dojo小例子(12)form转换成带内部对象的json数据
- JSP的include指令