if語句是變成語言中最常用的語句; if語句的文法為:if(condition){語句1}else{語句2} condition可以是任意表達式,ECMAScript可以通過Boolean()将condition條件轉換為布爾值;如果轉換的條件為true,則執行語句1;如果轉換的條件為false,則執行語句2; switch case; if 判斷 表達式, 有固定的格式。 if (判斷的條件=>條件轉化的結果是true) { 條件成立時執行的代碼,條件不成立則不執行 } 關鍵字 if + (判斷條件) + { 條件成立執行的代碼} if(true) { alert(1); }
if(11 && true) { alert(1); } if(false || true) { alert(1); } if (判斷條件) { 成立執行的代碼} else {條件不成立執行的代碼} if (![] == false) { alert('成立了') } else { alert('沒有成立') } if (第一個判斷條件){第一個條件成立執行的代碼}else if(第二判斷條件) {第二個判斷條件成了的代碼} var num = 4; if (num == 0) { alert('值為0'); } else if (num == 1) { alert('值為1'); } else if (num == 2) { alert('值為2'); } else if (num == 3) { alert('值為3'); }else{ alert('值都不相等') }
三元運算判斷: 判斷條件 ?條件成立執行的代碼 : 條件不成立執行的代碼 var num = 2; if(num == 1) { alert('值是1') }else{ alert('值為2') } num == 1 ? alert('值是1') : alert('值是就是這個值2'); num == 1 ? alert('值是1') : ''; //注:三元運算如果沒有第二個執行代碼,可把後面寫成“”空字元串,或者null,否則會報錯; // 應用環境 var n = 2;
var num = n ? 1 : 3; // 将變量n轉化成布爾,為true。 true成立,按位操作,将成立時執行的代碼位置上的資料傳回;最後把三元運算符的結果再指派給我們的num; console.log(num);
switch...case...語句與if關系最為密切,也是經常使用的; 每一個case後面都必須加break;break是當條件滿足case後面的條件時,執行完代碼後,跳出switch語句,如果不加break就會繼續執行下一個case後面的代碼;default關鍵字則用于表達式不比對前邊前邊任何一種形式時執行的代碼; var num = '2';
switch (num) { // 需要判斷的資料
case 2: // case 的意義 檢視是否等于2 '2' === 2
alert('值是2');
break; // 文法中每一組判斷必須加break
case 3: // case 的意義 檢視是否等于3
alert('值是3');
break;
default:// default的意義 所有的判斷不成立的時候,執行default
alert('值都不對'); } 謹記:switch 表達式與後邊case的比較,這裡邊的比較是===比較,是絕對比較;