JavaScript的三種條件語句:1、「if else」語句,語法「if(條件){...}else{...}」;2、「switch...case」語句;3、三元運算語句,語法「條件表示式 ? 表示式1 : 表示式2 ;」。
本教學操作環境:windows7系統、javascript1.8.5版、Dell G3電腦。
條件判斷語句是程式開發過程中一種經常使用的語句形式,和大部分程式語言相同,JavaScript 中也有條件判斷語句。所謂條件判斷,指的是程式根據不同的條件來執行不同的操作,例如根據年齡來顯示不同的內容,根據布林值 true 或 false 來判斷操作是成功還是失敗等。
1、語法
if-else的語法分為三種:
(1)if 語句;
if(條件){ 條件為true時執行程式碼 }
(2)if else 語句;
if(條件){ 條件為true時執行的程式碼 } else { 條件為false時執行的程式碼 }
(3)if else if else 語句;
if(條件1){ 條件1為true時執行的程式碼 } esle if (條件2){ 條件1false條件2true } else { 都false }
例子
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>IfElse</title> </head> <body> <script type="text/javascript"> var myage = 10; //第一種語法 if (myage > 5){ document.writeln("你的年齡大於5歲"); } //第二種語法 if (myage > 15){ document.writeln("你的年齡大於15歲"); } else { document.writeln("你的年齡小於15歲"); } //第三種語法 if (myage > 5){ document.writeln("你的年齡大於5歲"); } else if(myage < 15 ){ document.writeln("你的年齡大於15小於5歲"); } else { document.writeln("你的年齡大於等於15歲") } </script> </body> </html>
輸出結果為
1、語法
switch( 表示式 n ){ case 1 : 執行程式碼塊 1; break; case 2 : 執行程式碼塊 2 ; break; default: 與 case 1 和 case 2 不同時執行的程式碼 }
2、工作原理
首先設定表示式 n(通常是一個變數)。隨後表示式的值會與結構中的每個 case 的值做比較。如果存在匹配,則與該 case 關聯的程式碼塊會被執行。請使用 break 來阻止程式碼自動地向下一個 case 執行。
例子
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>Switch</title> </head> <body> <script type="text/javascript"> var flag = 2; switch (flag) { case 1:document.write("紛紛擾擾這個世界,所有的瞭解。");break; case 2:document.write("只要讓我留在你身邊。");break; default:break; } </script> </body> </html>
輸出結果為
三元運運算元(也被稱為條件運運算元),由一個問號和一個冒號組成,其語法格式如下:
b ? x : y
b 運算元必須是一個布林型的表示式,x 和 y 是任意型別的值。
如果運算元 b 的返回值為 true,則執行 x 運算元,並返回該表示式的值。
如果運算元 b 的返回值為 false,則執行 y 運算元,並返回該表示式的值。
範例:
定義變數 a,然後檢測 a 是否被賦值,如果賦值則使用該值;否則設定預設值。
var a = null; //定義變數a typeof a != "undefined" ? a = a : a = 0; //檢測變數a是否賦值,否則設定預設值 console.log(a); //顯示變數a的值,返回null
條件運運算元可以轉換為條件結構:
if(typeof a != "undefined"){ //賦值 a = a; }else{ //沒有賦值 a = 0; } console.log(a);
也可以轉換為邏輯表示式:
(typeof a != "undefined") && (a =a) || (a = 0); //邏輯表示式 console.log(a);
在上面表示式中,如果 a 已賦值,則執行 (a = a) 表示式,執行完畢就不再執行邏輯或運運算元後面的 (a = 0) 表示式;如果 a 未賦值,則不再執行邏輯與運運算元後面的 (a = a) 表示式,轉而執行邏輯或運運算元後面的表示式 (a = 0)。
注意:
在實戰中需要考慮假值的干擾。使用 typeof a != "undefined" 進行檢測,可以避開變數賦值為 false、null、""、NaN等假值時,也被誤認為沒有賦值。
【相關推薦:】
以上就是JavaScript的條件語句有哪三種的詳細內容,更多請關注TW511.COM其它相關文章!