流程控制
JavaScript通过流程语句来执行程序流,程序流有若干语句组成。在正常情况下,程序中 的语句时按照书写顺序执行的,这种结构称为顺序结构。除了顺序结构之外还有选择结构和循环结构。
1.选择结构
(1)if-else语句
语法:
if(condition){
statementS;
}else{
statements;
}
(2)if-else if-else语句
语法:
if(condition){
statementS;
}else if{
statements;
}
……
else{
statements;
}
例如:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta charset="GB2312">
<title>选择结构</title>
<script language="JavaScript">
function max() {
var fist=parseInt(form1.fist.value);
var secod=parseInt(form1.secod.value);
if(isNaN(fist)){
alert("第一个数不是数值类型");
form1.fist.value=""; }
else if (isNaN(secod)) {
alert("第二个数不是数值类型");
form1.secod.value="";
}else{
var max=(fist>=secod?fist:secod);
document.write("两个数之间较大的数为:"+max);
} }
</script> </head>
<body>
<form name="form1">
请输入第一个数(数值型):
<input type="text" name="fist" />
<br>
请输入第二个数(数值型):
<input type="text" name="secod" />
<br>
<input type="button" ONCLICK="max()" value="选择较大值" />
<input type="reset" value="重填" />
</form>
</body>
</html>
(3)switch语句([ ]中为可选)
语法:
switch(expression){
case value1:
statement;
break;
case value2:
statement2;
break;
……
case valueN;
statementN;
break;
[defalut:
defalutStatements;]
}
例如:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta charset="GB2312">
<title>switch语句</title>
</head>
<body>
<script language="JavaScript">
var day= new Date().getDay();
switch (day){
case 0:
title="今天是星期日";
break;
case 1:
title="今天是星期一"
break;
case 2:
title="今天是行权期二";
break;
case 3:
title="今天是星期三";
break;
case 4:
title="今天是星期四";
break;
case 5:
title="今天是星期五";
break;
case 6:
title="今天是星期六";
break;
}
document.write(title);
</script> </body>
</html>
2.循环语句
(1)for循环(循环次数已知的循环)
语法:
for(inintal-condition;conditin;increment){
statements;
}
例子:
输出九九乘法表
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>循环结构</title>
</head> <body>
<font size="-1" color="blue">
<script language="JavaScript">
var i,j;
for(i=1;i<=10;i++){
for(j=1;j<=i;j++){
document.write(j+"*"+i+"="+i*j);
document.write(" ");
}
document.write("<br>");
}
</script>
</font> </body>
</html>
(2)for-in语句(通常用来遍历数组)
语法:
for(elements in object){
statement;
}
例如:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta charset="GB2312">
<title>for-in</title>
</head>
<body>
<script language="JavaScript">
var student=new Object();
student.name="王明明";
student.no="20120156";
student.addreess="山东济南";
for(e in student){
document.write(e+":"+student[e]+"<br>");
}
</script>
</body>
</html>
(3)while语句(次数未知的循环)
语法:
while(condition){
statement;
}
例如:
输出1-100中3的倍数
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta charset="GB2312">
<title>while循环</title>
</head>
<body>
<script language="JavaScript">
var i=1;
while(i<100){
if(i%3==0){
document.write(i+" ");
}
i++;
}
</script> </body>
</html>
(4)do-while语句(该语句最少执行一次)
语法:
do{
statement;
}
while(conditions);
例如:
计算1-100的和
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta charset="GB2312">
<title>do-while语句</title>
</head>
<body>
<script language="JavaScript">
var i = 1;
var num = 0;
do {
sum+=i;
i++
}while(i<=100);
document.write("1-100的和是:"+sum);
</script>
</body>
</html>
转移语句
(1)break语句
break语句用于switch语句和for语句等循环语句中。用来中止switch语句,执行switch语句后的语句。
(2)continue语句
continue语句用于for,while,do-while,for-in语句中,用来结束本次循环,执行下一次循环,一般与if语句一起使用。
(3)return语句
return语句一般在函数中使用,可以使用return语句表达式的格式返回任意类型的函数值,返回的函数值可以用变量接受。
特此声明:如需转载请注明出处,如有疑问请及时提出以便于改正,如有侵权,联系删除,谢谢