《JavaScript高級程序設計》閱讀筆記(七):ECMAScript中的語句
if語句
語法:
1 if(condition){
2 statement1;
3 }
4 else{
5 statement2;
6 }
迭代語句
1、do-while語句
語法:
1 do{
2 statement
3 }while(expression);
2、while語句
語法:
1 while(expression){
2 statement
3 }
3、for語句
語法:
1 for(initialization;expression;post-loop-expression){
2 statement;
3 }
4、for-in語句
語法:
1 for(property in expression){
2 statement
3 }
示例:
用上面四種方法遍歷數組:
1 var iArr=new Array(1,2,3,4,5);
2 var index=0;
3
4 //do-while
5 do{
6 console.log(iArr[index]);
7 }while(++index<iArr.length);
8
9 //while
10 index=0;
11 while(index++<iArr.length){
12 console.log(iArr[index-1]);
13 }
14
15 //for
16 for(index=0;index<iArr.length;index++){
17 console.log(iArr[index]);
18 }
19
20 //for-in
21 for(x in iArr){
22 console.log(iArr[x]);
23 }
有標簽的語句
可以用下列語法給語句加標簽,以便以后調用:
1 label:statement
例如:
1 start:var iCount=10;
這個例子中,標簽start可被后來的break語句或continue語句調用
break語句和continue語句
break和continue都對循環中的代碼執行提供了更嚴格的控制。break語句可以立即退出循環,而continue只是退出當前循環,進入下一次循環。示例:
1 var iNum=0;
2 for(var i=1;i<10;i++){
3 if(i%5==0){
4 break;
5 }
6 iNum++;
7 }
8 console.log(iNum);//4
9
10 iNum=0;
11 for(var i=1;i<10;i++){
12 if(i%5==0){
13 continue;
14 }
15 iNum++;
16 }
17 console.log(iNum);//8
18
19 iNum=0;
20 outer://標簽
21 for(var i=0;i<10;i++){
22 for(var j=0;j<10;j++){
23 if(i==5&&j==5){
24 break outer;
25 }
26 iNum++;
27 }
28 }
29 console.log(iNum);//55
30
31 iNum=0;
32 outer://標簽
33 for(var i=0;i<10;i++){
34 for(var j=0;j<10;j++){
35 if(i==5&&j==5){
36 continue outer;
37 }
38 iNum++;
39 }
40 }
41 console.log(iNum);//95
with語句
with語句用于設置代碼在特定對象中的作用域。它的語法如下:
1 with(expression){
2 statement
3 }
用法示例:
1 var sMessage="Hello World";
2 with(sMessage){
3 console.log(toUpperCase());//HELLO WORLD
4 }
switch語句
if語句的姊妹語句是 switch 語句。switch語法如下:
1 switch(expression){
2 case value1:
3 statement
4 break;
5 case value2:
6 statement
7 break;
8 ...
9 case valueN:
10 statement
11 break;
12 default:
13 statement
14 }
ECMAScript中的switch可以用于字符串,示例:
1 var sColor="green";
2 switch(sColor){
3 case "red":
4 console.log("#FF0000");
5 break;
6 case "green":
7 console.log("#00FF00");//#00FF00
8 break;
9 default:
10 console.log("#FFFFFF");
11 }

浙公網安備 33010602011771號