Javascript 流程控制
流程控制
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語句表示式的格式返回任意型別的函式值,返回的函式值可以用變數接受。
特此宣告:如需轉載請註明出處,如有疑問請及時提出以便於改正,如有侵權,聯絡刪除,謝謝