JavaScript高階(05_流程控制與迴圈)
流程控制
-
js中的程式是從上到下一行行執行的
-
通過流程控制語句可以控制程式執行的流程
-
使程式可以根據一定的條件來選擇語句執行
-
語句的分類
-
迴圈語句
-
while迴圈
-
通過迴圈語句可以反覆的執行一段程式碼塊多次
-
語法:
-
while(條件表示式){ 語句。。。 }
-
while語句在執行時,先對條件表示式進行求值判斷
-
如果值為true,則執行迴圈體語句,然後依次反覆判斷和執行
-
如果值為false,則不執行迴圈體語句,並直接跳出該迴圈
-
先判斷後執行
-
-
do...while迴圈
-
語法:
-
do{ 語句... }while(條件表示式)
-
先執行迴圈體中的語句,再對while的條件表示式判斷
-
如果結果為true,則繼續執行迴圈體,執行完畢繼續判斷以此類推
-
如果結果為false,則終止迴圈
-
先執行後判斷
-
-
for迴圈
-
初始化表示式
-
條件表示式
-
更新表示式
-
語法:
-
for(初始化表示式;條件表示式;更新表示式){ 迴圈體語句... }
-
執行流程:
-
執行初始化表示式,初始化變數(初始化表示式只執行一次)
-
執行條件表示式,來判斷是否執行迴圈
-
如果為true,則執行迴圈體 [迴圈體執行完成後跳至步驟3]
-
如果為false,則終止迴圈
-
-
執行更新表示式
-
更新表示式執行完畢後 [執行步驟跳至步驟2]
-
-
-
-
break關鍵字只能用來退出switch或for迴圈語句
-
不能在if語句中使用break和continue
-
break關鍵字,會立即終止離他最近的那個迴圈語句
-
可以為迴圈語句建立一個標籤,來表示當前迴圈
-
label:迴圈語句
-
outer: for(i=0; i<5; i++){ console.log("@外層迴圈"+i); inner: for(j=0; j<5; j++){ break inner; console.log("內層迴圈"+j); } }
-
使用break關鍵字時,可以在break後面+label標籤,來指定結束的迴圈
-
此時結束的不是最近的迴圈了
-
continue 關鍵字可以用來跳過當次迴圈,使得迴圈直接進行下一次迴圈
-
continue也是預設對離他最近的迴圈起作用
-
-
-
- 條件分支語句
-
條件判斷語句
-
使用條件 判斷語句可以在執行某個語句之前進行判斷
-
如果條件成立才會執行語句,否則不執行
-
if語句
-
if語法一:
-
if(條件表示式){語句}
-
if語句在執行時,會先對條件表示式進行求值判斷 ,如果條件表示式為true,則執行if後的語句,否則不會執行
-
if語句只能控制緊隨其後的語句
-
如果希望if語句可以控制多個語句,可以將這些需要控制的語句丟到程式碼塊{}中
-
if語句後面的程式碼塊不是必須的,但是在開發中儘量用{}來寫程式碼塊
-
-
switch語句
-
switch 和 if 基本可以互相轉換使用
-
switch(score){ case 1: 語句1 case 2: 語句2 ... default: 語句default }
-
-
-