switch (expression) {
case label :
statementlist
case label :
statementlist
...
default :
statementlist
}
case label :
statementlist
case label :
statementlist
...
default :
statementlist
}
解决方案 »
- Microsoft JScript 运行时错误: Syntax error, unrecognized expression: Syntax error, un
- JavaScript
- 请问下面的应该怎么写?
- 该JS代码,为何在IE下正常,在FF没有任何反应,也没有错误提示
- 请在家帮帮我 javascript 怎么让一个textbox不能输入字母,和字符,出来“.”和数字
- checkbox问题.在线等,急!
- 如何在一文本框一按回车就执行某一按纽的单事件?
- 麻烦看一下这段代码
- {200分}请问关于在子窗口中选择多值以后传递给父窗口中一个多值域的问题!
- google地图,框选是一个矩形,已知东北西南经纬度,求西北东南经纬度
- 求救,怎样统计访问页面栏目的用户数?
- 代码出错,帮忙看一下。
function test()
{
var str = "one";
switch(str)
{
case "one":
alert("one");
break;
case "two":
alert("two");
break;
default:
alert("three");
break;
}
}
</SCRIPT><BODY onLoad="test()">
</BODY>
//走棋规则
function rule(chessName,x1,y1,x2,y2){
var rtn=false;
switch (chessName){
case "车":
rtn=ruleChe(x1,y1,x2,y2);
break;
case "马":
rtn=ruleMa(x1,y1,x2,y2);
break;
case "象":
rtn=ruleXiang(x1,y1,x2,y2);
break;
case "相":
rtn=ruleXiang(x1,y1,x2,y2);
break;
case "士":
rtn=ruleShi(x1,y1,x2,y2);
break;
case "仕":
rtn=ruleShi(x1,y1,x2,y2);
break;
case "将":
rtn=ruleJiang(x1,y1,x2,y2);
break;
case "帅":
rtn=ruleJiang(x1,y1,x2,y2);
break;
case "炮":
rtn=rulePao(x1,y1,x2,y2);
break;
case "兵":
rtn=ruleBing(x1,y1,x2,y2);
break;
case "卒":
rtn=ruleBing(x1,y1,x2,y2);
break;
default:
rtn=false;
break;
}
return(rtn);
}
case "a":
case "b":
.....
cae "c":
....
<script language=javascript>
function fun( obj )
{
switch ( obj )
{
case "a":
........;
break;
case "b":
.......;
break;
default:
........;
break;
}
}
</script>
case label :
statementlist
case label :
statementlist
...
default :
statementlist
}
参数
expression
要求值的表达式。
label
根据 expression 来匹配的标识符。如果 label === expression,则立即从冒号后的 statementlist 处开始执行,直到遇到一个可选的 break 语句,或到达 switch 语句的最后。
statementlist
要被执行的一个或多个语句。
说明
使用 default 子句来提供一个语句,该语句只在没有任何一个标签值与 expression 相匹配时才被执行。它可以出现在 switch 代码块内的任何地方。可以指定零或多个 label 块。如果没有 label 和 expression 的值匹配,并且没有提供 default 情况,则不执行任何语句。通过 switch 语句执行流程如下: 求 expression 的值并依次序查看 label,直到找到一个匹配。
如果 label 的值等于 expression 的值,则执行它相应的 statementlist。
继续执行,直到遇到一个 break 语句,或者 switch 语句结束。这意味着如果没有使用一个 break 语句,则多个 label 块被执行。
如果没有 label 等于 expression 的值,则跳转到 default 情况。如果没有 default 情况,则跳转到最后一步。
继续执行紧接 switch 代码块末尾的语句。
示例
下面示例测试一个对象的类型: function MyObject() {
...}switch (object.constructor){
case Date:
...
case Number:
...
case String:
...
case MyObject:
...
default:
...
}