您的位置:首页 > Web前端 > JavaScript

JavaScript Switch 语句的详解

2014-04-27 11:46 369 查看


JavaScript Switch 语句


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


语法


switch(n)
{
case 1:
执行代码块 1
break;
case 2:
执行代码块 2
break;
default:
n 与 case 1 和 case 2 不同时执行的代码
}


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


实例


显示今日的周名称。请注意 Sunday=0, Monday=1, Tuesday=2, 等等:
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之间是有空格的,这点要十分注意.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: