TypeScript 條件語句
條件語句用于基于不同的條件來執(zhí)行不同的動(dòng)作。
TypeScript 條件語句是通過一條或多條語句的執(zhí)行結(jié)果(True 或 False)來決定執(zhí)行的代碼塊。
可以通過下圖來簡(jiǎn)單了解條件語句的執(zhí)行過程:
1. 條件語句
通常在寫代碼時(shí),您總是需要為不同的決定來執(zhí)行不同的動(dòng)作。您可以在代碼中使用條件語句來完成該任務(wù)。
在 TypeScript 中,我們可使用以下條件語句:
- if 語句 - 只有當(dāng)指定條件為 true 時(shí),使用該語句來執(zhí)行代碼
- if...else 語句 - 當(dāng)條件為 true 時(shí)執(zhí)行代碼,當(dāng)條件為 false 時(shí)執(zhí)行其他代碼
- if...else if....else 語句- 使用該語句來選擇多個(gè)代碼塊之一來執(zhí)行
- switch 語句 - 使用該語句來選擇多個(gè)代碼塊之一來執(zhí)行
2. if 語句
TypeScript if 語句由一個(gè)布爾表達(dá)式后跟一個(gè)或多個(gè)語句組成。
1)語法
語法格式如下所示:
if(boolean_expression){ # 在布爾表達(dá)式 boolean_expression 為 true 執(zhí)行 }
如果布爾表達(dá)式 boolean_expression為 true,則 if 語句內(nèi)的代碼塊將被執(zhí)行。如果布爾表達(dá)式為 false,則 if 語句結(jié)束后的第一組代碼(閉括號(hào)后)將被執(zhí)行。
2) 流程圖
3) 范例
var num:number = 5 if (num > 0) { console.log("數(shù)字是正數(shù)") }
編譯以上代碼得到如下 JavaScript 代碼:
var num = 5; if (num > 0) { console.log("數(shù)字是正數(shù)"); }
執(zhí)行以上 JavaScript 代碼,輸出結(jié)果為:
數(shù)字是正數(shù)
3. if...else 語句
一個(gè) if 語句后可跟一個(gè)可選的 else 語句,else 語句在布爾表達(dá)式為 false 時(shí)執(zhí)行。
1) 語法
語法格式如下所示:
if(boolean_expression){ # 在布爾表達(dá)式 boolean_expression 為 true 執(zhí)行 }else{ # 在布爾表達(dá)式 boolean_expression 為 false 執(zhí)行 }
如果布爾表達(dá)式 boolean_expression 為 true,則執(zhí)行 if 塊內(nèi)的代碼。如果布爾表達(dá)式為 false,則執(zhí)行 else 塊內(nèi)的代碼。
2) 流程圖
3) 范例
var num:number = 12; if (num % 2==0) { console.log("偶數(shù)"); } else { console.log("奇數(shù)"); }
編譯以上代碼得到如下 JavaScript 代碼:
var num = 12; if (num % 2 == 0) { console.log("偶數(shù)"); } else { console.log("奇數(shù)"); }
執(zhí)行以上 JavaScript 代碼,輸出結(jié)果為:
偶數(shù)
4. if...else if....else 語句
if...else if....else 語句在執(zhí)行多個(gè)判斷條件的時(shí)候很有用。
1) 語法
語法格式如下所示:
if(boolean_expression 1){ # 在布爾表達(dá)式 boolean_expression 1 為 true 執(zhí)行 } else if( boolean_expression 2){ # 在布爾表達(dá)式 boolean_expression 2 為 true 執(zhí)行 } else if(( boolean_expression 3){ # 在布爾表達(dá)式 boolean_expression 3 為 true 執(zhí)行 } else{ # 布爾表達(dá)式的條件都為 false 時(shí)執(zhí)行 }
需要注意以下幾點(diǎn):
- 一個(gè) if 判斷語句可以有 0 或 1 個(gè) else 語句,她必需在 else..if 語句后面。
- 一個(gè) if 判斷語句可以有 0 或多個(gè) else..if,這些語句必需在 else 之前。
- 一旦執(zhí)行了 else..if 內(nèi)的代碼,后面的 else..if 或 else 將不再執(zhí)行。
2) 范例
3) TypeScript
var num:number = 2 if(num > 0) { console.log(num+" 是正數(shù)") } else if(num < 0) { console.log(num+" 是負(fù)數(shù)") } else { console.log(num+" 不是正數(shù)也不是負(fù)數(shù)") }
編譯以上代碼得到如下 JavaScript 代碼:
4. JavaScript
var num = 2; if (num > 0) { console.log(num + " 是正數(shù)"); } else if (num < 0) { console.log(num + " 是負(fù)數(shù)"); } else { console.log(num + " 不是正數(shù)也不是負(fù)數(shù)"); }執(zhí)行以上 JavaScript 代碼,輸出結(jié)果為:
2 是正數(shù)
5. switch…case 語句
一個(gè) switch 語句允許測(cè)試一個(gè)變量等于多個(gè)值時(shí)的情況。每個(gè)值稱為一個(gè) case,且被測(cè)試的變量會(huì)對(duì)每個(gè) switch case 進(jìn)行檢查。
1) switch 語句的語法
switch(expression){ case constant-expression : statement(s); break; /* 可選的 */ case constant-expression : statement(s); break; /* 可選的 */ /* 您可以有任意數(shù)量的 case 語句 */ default : /* 可選的 */ statement(s); }
switch 語句必須遵循下面的規(guī)則:
- switch 語句中的 expression 是一個(gè)常量表達(dá)式,必須是一個(gè)整型或枚舉類型。
- 在一個(gè) switch 中可以有任意數(shù)量的 case 語句。每個(gè) case 后跟一個(gè)要比較的值和一個(gè)冒號(hào)。
- case 的 constant-expression 必須與 switch 中的變量具有相同的數(shù)據(jù)類型,且必須是一個(gè)常量或字面量。
- 當(dāng)被測(cè)試的變量等于 case 中的常量時(shí),case 后跟的語句將被執(zhí)行,直到遇到 break 語句為止。
- 當(dāng)遇到 break 語句時(shí),switch 終止,控制流將跳轉(zhuǎn)到 switch 語句后的下一行。
- 不是每一個(gè) case 都需要包含 break。如果 case 語句不包含 break,控制流將會(huì) 繼續(xù) 后續(xù)的 case,直到遇到 break 為止。
- 一個(gè) switch 語句可以有一個(gè)可選的 default case,出現(xiàn)在 switch 的結(jié)尾。default case 可用于在上面所有 case 都不為真時(shí)執(zhí)行一個(gè)任務(wù)。default case 中的 break 語句不是必需的。
2) 流程圖

3) 范例
var grade:string = "A"; switch(grade) { case "A": { console.log("優(yōu)"); break; } case "B": { console.log("良"); break; } case "C": { console.log("及格"); break; } case "D": { console.log("不及格"); break; } default: { console.log("非法輸入"); break; } }
編譯以上代碼得到如下 JavaScript 代碼:
var grade = "A"; switch (grade) { case "A": { console.log("優(yōu)"); break; } case "B": { console.log("良"); break; } case "C": { console.log("及格"); break; } case "D": { console.log("不及格"); break; } default: { console.log("非法輸入"); break; } }
執(zhí)行以上 JavaScript 代碼,輸出結(jié)果為:
優(yōu)
- 如何通過JavaScript實(shí)現(xiàn)組件化和模塊化
- 如何通過Javascript腳本獲取form和input內(nèi)容
- JavaScript如何去掉末尾的分隔符
- JavaScript工程url無法使用如何解決
- javascript如何刪除網(wǎng)頁(yè)數(shù)據(jù)
- JavaScript農(nóng)陽歷轉(zhuǎn)換的方法是什么
- JavaScript不能獲取表單如何解決
- javascript如何輸出當(dāng)前時(shí)間
- notepad怎么編譯運(yùn)行javascript
- JavaScript怎么自定義函數(shù)求累加
- TypeScript 基礎(chǔ)語法
- TypeScript 循環(huán)
- TypeScript 函數(shù)
- TypeScript String 字符串
- TypeScript Array 數(shù)組
- TypeScript Map 對(duì)象
- TypeScript 聯(lián)合類型
- TypeScript 類
- TypeScript 命名空間
- TypeScript 模塊