示例代碼:性能
if (v = '一花一世界') { console.log(''); }
示例代碼:優化
;// 表示空語句
語法:
if (條件表達式) {spa
語句塊 - 當條件表達式計算結果爲true時才執行
}code
條件表達式:圖片
問題 - 若是條件表達式計算的結果不是Boolean類型ip
示例代碼:it
var result = true;// boolean類型值 if (result) { console.log('這是if語句執行的語句塊...'); } if (1 && 0) { console.log('這是if語句執行的語句塊...'); } var v;/* 定義變量,但不初始化 */ if (v = '一花一世界') {/* 將變量的初始化操做,放置在條件表達式中 */ console.log('這是if語句執行的語句塊...'); } // 等價於如下寫法 v = '一花一世界';/* 變量的初始化操做 */ if (v) { console.log('這是if語句執行的語句塊...'); } console.log('這是if語句執行完畢後的內容...');
if語句執行流程圖:
console
語法:class
if...else語句
if (條件表達式) {基礎
語句塊一
} else {
語句塊二 }
示例代碼:
var result = false; if (result) { console.log('這是語句塊一...'); } else { console.log('這是語句塊二...'); } console.log('這是if語句執行完畢後的內容...');
if...else語句執行圖:
對應的語句塊的大括號"{}" - 容許被省略的
示例代碼:
if (result) console.log('這是if語句執行的語句塊1...'); console.log('這是if語句執行的語句塊2...'); console.log('這是if語句執行的語句塊3...'); console.log('這是if語句執行完畢後的內容...');
控制檯調用結果對比圖:
示例代碼:
var score = 81; if (score > 90) { console.log('優秀'); } else { if (score > 80) { console.log('良好'); } else { console.log('及格'); } }
/ 變量聲明 - 並初始化值 /
var score = 81;
/ 條件表達式 /
if (score > 90) {
/* 調用輸出 */ console.log('優秀');
} else {
/* 條件表達式 */ if (score > 80) { /* 調用輸出 */ console.log('良好'); } else { /* 調用輸出 */ console.log('及格'); }
}
示例代碼:
/* 變量聲明 - 並初始化值 */ var score = 65; if (score > 90) { console.log('優秀'); } else if (score > 80) { console.log('良好'); } else { console.log('及格'); }
if...else語句與else if語句對比效果圖:
語法:
switch (條件表達式) {
case 值一: 語句塊一 case 值二: 語句塊二 ... ... default: 語句塊N
條件表達式 - 不必定是Boolean類型,計算結果分別與case語句的值進行比較
case語句 - 羅列可能的匹配值
default語句 - 相似於if...else語句中的else語句
示例代碼:
var result = '0'; switch (result) { case 0: console.log('這是數字0'); break; case 1: console.log('這是數字1'); break; default: console.log('以上結果無一知足'); }
switch...case語句代碼分析圖:
switch...case語句執行流程圖:
注意: 必須經過一個變量值的改變,控制條件表達式的計算結果
示例代碼:
/* 變量聲明並賦值 */ var result = 1; /* 條件表達式 */ while (result <= 10) { console.log('這是while循環語句執行...'); /* 利用自增中止循環效果 */ result++;// 改變變量的值,至少有一次讓條件表達式計算的結果爲false } console.log('這是while循環語句執行完畢後...');
控制檯效果圖:
while語句的執行流程圖:
do {
語句塊
} while (條件表達式);
示例代碼:
/* 變量聲明並賦值 */ var result = 0; do { console.log(result); /* 利用自增結束循環 */ result++; /* 條件表達式 */ } while (result <= 10);
備註: while語句與do...while語句的區別
for (初始化表達式; 條件判斷表達式; 循環控制表達式) {
語句塊
}
示例代碼:
/* 變量聲明並初始化值 */ var v = 0; for (var v = 0; v < 10; v++) { console.log(v); }
控制檯調用結果圖:
while語句與for語句對比圖:
場景 - 跳轉語句只能用於循環執行結構,而不能用於條件判斷結構
示例代碼:
for (var i=0; i<9; i++) { if (i == 4) { break; } console.log(i); }
調用臺效果圖:
示例代碼:
for (var i=0; i<9; i++) { if (i == 4) { continue; } console.log(i); }
控制檯效果圖: