javascript switch语句
varnum=5;switch(num){casenum<0:alert("lessthan0.");break;casenum>=0&&num<=10:alert("b...
var num = 5;
switch (num){
case num < 0:
alert("less than 0.");
break;
case num >= 0 && num <= 10:
alert("between 0 and 10");
break;
default :
alert("greater than 10");
}
这段输出的是:greater than 10.
var num = 5;
switch (true){
case num < 0:
alert("less than 0.");
break;
case num >= 0 && num <= 10:
alert("between 0 and 10");
break;
default :
alert("greater than 10");
}
这段代码输出的是:between 0 and 10
为什么会出现这种差别,第一段,怎么改能输出正确的结果? 展开
switch (num){
case num < 0:
alert("less than 0.");
break;
case num >= 0 && num <= 10:
alert("between 0 and 10");
break;
default :
alert("greater than 10");
}
这段输出的是:greater than 10.
var num = 5;
switch (true){
case num < 0:
alert("less than 0.");
break;
case num >= 0 && num <= 10:
alert("between 0 and 10");
break;
default :
alert("greater than 10");
}
这段代码输出的是:between 0 and 10
为什么会出现这种差别,第一段,怎么改能输出正确的结果? 展开
3个回答
2012-03-27
展开全部
这个解释很简单的,楼主只需要对switch……case……有个透彻的了解就行。
我们都知道
switch(true)
{
case true:
alert('true');
break;
case false:
alert('false');
break;
default:
alert('default');
}
结果显示是“true”。只要楼主把第一个例子转换一下就行了。switch(num)的时候,由于后面num<0是false,num >= 0 && num <= 10是true,但是num是数字而不是true或false自然选择默认的default了,所以显示结果是“greater than 10"。同理可以知道第二个例子为什么显示“between 0 and 10“了。
我们都知道
switch(true)
{
case true:
alert('true');
break;
case false:
alert('false');
break;
default:
alert('default');
}
结果显示是“true”。只要楼主把第一个例子转换一下就行了。switch(num)的时候,由于后面num<0是false,num >= 0 && num <= 10是true,但是num是数字而不是true或false自然选择默认的default了,所以显示结果是“greater than 10"。同理可以知道第二个例子为什么显示“between 0 and 10“了。
展开全部
switch(x){
case 1://x等于1
fun();//执行才做,可为函数,也可直接写处理逻辑
break;
case 2:
fun();//执行才做,可为函数,也可直接写处理逻辑
break;
}
case 1://x等于1
fun();//执行才做,可为函数,也可直接写处理逻辑
break;
case 2:
fun();//执行才做,可为函数,也可直接写处理逻辑
break;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
出现这个正常啊。。。 你想要什么结果?
追问
我想知道为什么一个是num,一个是true。怎么就出现这个差别了 。。第一段的执行过程是怎么样的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询