do-while 語句是一種后測試循環語句,即循環體中的代碼執行后才會對退出條件進行求值。換句話說,循環體內的代碼至少執行一次。
do{
statement
} while (expression)
例子
let i = 0;
do{
debugger; //在代碼塊中添加調試后,可以看出來代碼在執行過程中每次的變化
i += 2;
}while (i<10);
在這個例子中,只要i小於10 ,循環就會重復執行。i從0 開始,每次循環遞增2.
注意 后測試循環經常用語這種情形:循環體內代碼在退出前至少要執行一次。
while語句是先測試循環語句,即先檢測退出條件,再執行循環體內的代碼。因此,while循環體內的代碼有可能不會執行。
let i = 0;
while (i < 10){
i += 2;
}
console.l0g(i);//10
在這個例子中,變量i從0開始,每次循環遞增2。只要i小於10,循環就會繼續。
// let i = 20;
// do{
// i += 2;
// console.log(i) //22
// }while(i<10) // 循環體內代碼至少執行一次
// console.log(i) // 22
let i = 20;
while (i < 10) { /* 先檢測退出條件,再執行循環體內代碼 */
i += 2; /* 因為 i = 20,是大於10的。所以直接退出條件循環。打印結果是20 */
console.log(i); //沒有打印是因為在條件判斷就結束了
}
console.log(i) //20