Javascript的switch中的case问题。

发布网友

我来回答

5个回答

热心网友

你是用逗号分开了"OR","MA","WI"。逗号也是运算符,会返回最后一个值。

所以这个时候只有"WI"的时候会是3.5和0.5。


所以按标准的使用多个case吧。
var stateCode = 'OR';
var statePercentage = 0.0;
var taxPercentage = 0.0;
switch (stateCode) {
case 'MO':
taxPercentage = 1.0;
statePercentage = 1.5;
break;
case "OR":
case "MA":
case "WI":
taxPercentage = 3.5;
statePercentage = 0.5;
break;
case 'CA':
case 'NY':
case 'VT':
statePercentage = 2.6;
taxPercentage = 4.5;
break;
case 'TX':
taxPercentage = 3.0;
break;
default:
taxPercentage = 2.0;
statePercentage = 2.3;
}
alert("tax is " + taxPercentage + " and state is " + statePercentage);

热心网友

var stateCode='OR';
var statePercentage=0.0;
var taxPercentage=0.0;
switch(stateCode){
case 'MO': taxPercentage=1.0; statePercentage=1.5; break;
case 'OR':
case 'MA':
case 'WI': taxPercentage=3.5; statePercentage=0.5; break;
case 'CA':
case 'NY':
case 'VT': statePercentage=2.6; taxPercentage=4.5; break;
case 'TX': taxPercentage=3.0; break;
default: taxPercentage=2.0; statePercentage=2.3;
}
alert("tax is "+ taxPercentage +" and state is "+ statePercentage);

热心网友

case "OR","MA","WI" :
taxPercentage=3.5;
statePercentage=0.5;
break;
这样是不可以的,换成下面的
case "OR":
case "MA":
case "WI" :
taxPercentage=3.5;
statePercentage=0.5;
break;

热心网友

<html>
<head>
<title>switch statement</title>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8"/>
<script type="text/javascript">
//<![CDATA[
var stateCode='OR';
var statePercentage=0.0;
var taxPercentage=0.0;
switch(stateCode){
case'MO':
taxPercentage=1.0;
statePercentage=1.5;
break;
case "OR":
case "MA":
case "WI":
taxPercentage=3.5;
statePercentage=0.5;
break;
case'CA':
case'NY':
case'VT':
statePercentage=2.6;
taxPercentage=4.5;
break;
case'TX':
taxPercentage=3.0;
break;
default:
taxPercentage=2.0;
statePercentage=2.3;
}
alert("tax is "+ taxPercentage +" and state is "+ statePercentage);
//]]>
</script>
</head>
<body>
<p>Imagine a form with options to pick state code</p>
</body>
</html>

你改成这样试试
用这种方式
case "OR":
case "MA":
case "WI":
代替你的那个
case "OR","MA","WI" :

你的这种方式我没用过。。不知道管不管用。。

热心网友

<html>
<head>
<title>switch statement</title>
<meta http-equiv="Content-Type" content="text/html;charset=utf-8"/>
<script type="text/javascript">
//<![CDATA[
var stateCode='OR';
var statePercentage=0.0;
var taxPercentage=0.0;
switch(stateCode){
case'MO':
taxPercentage=1.0;
statePercentage=1.5;
break;
case "OR":
case "MA":
case "WI":
taxPercentage=3.5;
statePercentage=0.5;
break;
case'CA':
case'NY':
case'VT':
statePercentage=2.6;
taxPercentage=4.5;
break;
case'TX':
taxPercentage=3.0;
break;
default:
taxPercentage=2.0;
statePercentage=2.3;
}
alert("tax is "+ taxPercentage +" and state is "+ statePercentage);
//]]>
</script>
</head>
<body>
<p>Imagine a form with options to pick state code</p>
</body>
</html>

你改成这样试试
用这种方式
case "OR":
case "MA":
case "WI":
代替你的那个
case "OR","MA","WI" :

你的这种方式我没用过。。不知道管不管用。。

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com