計算機編程中常見的if語句是條件判斷語句。if語句是一種選擇分支結構,它是依據(jù)明確的條件選擇選擇執(zhí)行路徑,而不是嚴格按照順序執(zhí)行,在編程實際運用中要根據(jù)程序流程選擇適合的分支語句,它是依照條件的結果改變執(zhí)行的程序;if語句的簡單語法“if(條件表達式){// 要執(zhí)行的代碼;}”。
本教程操作環(huán)境:windows7系統(tǒng)、javascript1.8.5版、Dell G3電腦。
計算機編程中常見的if語句是條件判斷語句。
條件判斷語句
條件判斷語句是一種選擇分支結構,它是依據(jù)明確的條件選擇選擇執(zhí)行路徑,而不是嚴格按照順序執(zhí)行,在編程實際運用中要根據(jù)程序流程選擇適合的分支語句,它是依照條件的結果改變執(zhí)行的程序。
流程圖如下:
條件判斷語句是程序開發(fā)過程中一種經(jīng)常使用的語句形式,和大部分編程語言相同,JavaScript 中也有條件判斷語句。所謂條件判斷,指的是程序根據(jù)不同的條件來執(zhí)行不同的操作,例如根據(jù)年齡來顯示不同的內(nèi)容,根據(jù)布爾值 true 或 false 來判斷操作是成功還是失敗等。
if語句
if 語句是 JavaScript 中最簡單的條件判斷語句,語法格式如下:
if(條件表達式){ // 要執(zhí)行的代碼; }
當條件表達式成立,即結果為布爾值 true 時,就會執(zhí)行{ }中的代碼。
示例代碼如下:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>JavaScript</title> </head> <body> <script type="text/javascript"> var age = 20; if(age >= 18){ // 如果 age >= 18 的結果為 true,則執(zhí)行下面 { } 中的代碼 alert("adult"); } </script> </body> </html>
運行結果如下圖所示:
if else 語句
if else 語句是 if 語句的升級版,它不僅可以指定當表達式成立時要執(zhí)行的代碼,還可以指定當表達式不成立時要執(zhí)行的代碼,語法格式如下:
if(條件表達式){ // 當表達式成立時要執(zhí)行的代碼 }else{ // 當表達式不成立時要執(zhí)行的代碼 }
示例代碼如下:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>JavaScript</title> </head> <body> <script type="text/javascript"> var now = new Date(); // 獲取當前的完整日期 var dayOfWeek = now.getDay(); // 獲取一個 0-6 之間的數(shù)字,用來表示當前是星期幾,0 表示星期日、1 表示星期一、以此類推 if (dayOfWeek > 0 && dayOfWeek < 6) { // 判斷:如果當前是星期一到星期五中的一天,則輸出“Have a nice day!”,若不是則輸出“Have a nice weekend!” alert("Have a nice day!"); } else { alert("Have a nice weekend!"); } </script> </body> </html>
運行結果如下圖所示:
if else if else 語句
if 和 if else 語句都只有一個條件表達式,而 if else if else 語句是它們更高級的形式,在 if else if else 語句中允許您定義多個條件表達式,并根據(jù)表達式的結果執(zhí)行相應的代碼,語法格式如下:
if (條件表達式 1) { // 條件表達式 1 為真時執(zhí)行的代碼 } else if (條件表達式 2) { // 條件表達式 2 為真時執(zhí)行的代碼 } ... else if (條件表達式N) { // 條件表達式 N 為真時執(zhí)行的代碼 } else { // 所有條件表達式都為假時要執(zhí)行的代碼 }
提示:if else if else 語句在執(zhí)行過程中,當遇到成立的條件表達式時,會立即執(zhí)行其后{ }中的代碼,然后退出整個 if else if else 語句,若后續(xù)代碼中還有成立的條件表達式,則不會執(zhí)行。
示例代碼如下:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>JavaScript</title> </head> <body> <script type="text/javascript"> var now = new Date(); // 獲取當前的完整日期 var dayOfWeek = now.getDay(); // 獲取一個 0-6 之間的數(shù)字,用來表示當前是星期幾,0 表示星期日、1 表示星期一、以此類推 if(dayOfWeek == 0) { // 判斷當前是星期幾 alert("星期日") } else if(dayOfWeek == 1) { alert("星期一") } else if(dayOfWeek == 2) { alert("星期二") } else if(dayOfWeek == 3) { alert("星期三") } else if(dayOfWeek == 4) { alert("星期四") } else if(dayOfWeek == 5) { alert("星期五") } else { alert("星期六") } </script> </body> </html>
運行結果如下圖所示:
注意事項
使用嵌套 if else 時,如果只有一行語句,也應該使用大括號包裹起來,避免條件歧義。
例如,下面嵌套 if else 就容易引發(fā)誤解:
if(0) if(1) console.log(1); else console.log(0);
針對上面代碼,JavaScript 解釋器將根據(jù)就近原則,按如下邏輯層次進行解釋:
if(0) if(1) console.log(1); else console.log(0);
因此使用大括號可以避免很多問題:
if(0){ if(1) console.log(1); }else{ console.log(0); }
【推薦學習:javascript高級教程】