Js Switch语句

来源:互联网 发布:windows loader 2.4 编辑:程序博客网 时间:2024/05/19 22:01

switch 语句用于基于不同的条件来执行不同的动作。

JavaScript Switch 语句

请使用 switch 语句来选择要执行的多个代码块之一。

语法

switch(n){case 1:  执行代码块 1  break;case 2:  执行代码块 2  break;default:  n 与 case 1 和 case 2 不同时执行的代码}
工作原理:首先设置表达式 n(通常是一个变量)。随后表达式的值会与结构中的每个 case 的值做比较。如果存在匹配,则与该 case 关联的代码块会被执行。请使用 break 来阻止代码自动地向下一个 case 运行。

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");}

ECMAScript 和 Java 中的 switch 语句

ECMAScript 和 Java 中的 switch 语句有两点不同。在 ECMAScript 中,switch 语句可以用于字符串,而且能用不是常量的值说明情况:

var BLUE = "blue", RED = "red", GREEN  = "green";switch (sColor) {  case BLUE: alert("Blue");    break;  case RED: alert("Red");    break;  case GREEN: alert("Green");    break;  default: alert("Other");}

这里,switch 语句用于字符串 sColor,声明 case 使用的是变量 BLUE、RED 和 GREEN,这在 ECMAScript 中是完全有效的。


上面的是js switch语句的一般用法,但是相信很多朋友与我一样还想switch语句能作相应的比较判断,


switch语句在JS中是允许作相应的比较判断,具体怎么做呢?方法如下:


ar w=$("#weight").val();                              //w体重
var h=$("#stature").val()/100;                     //身高
var bMi=Math.round(w/Math.pow(h,2));     //体质指数(BMI)=体重(kg)/身高(m)的平方。
switch (true){
case bMi<19:
$("#result h4 strong").text("过轻");
break;
case bMi>=19 && bMi<24:
$("#result h4 strong").text("适中");
break;
case bMi>=24 && bMi<29:
$("#result h4 strong").text("过重");
break;
case bMi>=29 && bMi<34:
$("#result h4 strong").text("肥胖");
break;
case bMi>=34:
$("#result h4 strong").text("非常肥胖");
break;
default:
  break;
}


从上面,可以看出,只要在switch中加上true 即可进行比较运算了。

JS switch语句注意点:

1、在switch中没有true参数时,只能是相等判定控制,即“如果expression等于value,就执行statement”;

2、加true参数后,即可进行比较运算控制了;

3、还应注意在“case value:”case与value之间是有空格的,这点要十分注意。

0 0