TypeScript - 決策語句



在 TypeScript 中,決策語句用於根據特定條件控制執行流程。TypeScript 支援 ES6 中所有型別的決策結構,包括 if、if...else、switch 語句。作為 JavaScript 的超集,TypeScript 繼承並擴充套件了 JavaScript 的特性,包括決策語句。

決策結構要求程式設計師指定一個或多個條件供程式評估或測試,以及如果條件確定為真則要執行的語句(或語句),以及可選地,如果條件確定為假則要執行的其他語句。

下面顯示的是大多數程式語言中常見的典型決策結構的一般形式:

Decision Making

決策結構在執行指令之前會評估條件。TypeScript 中的決策結構分類如下:

序號 語句及描述
1. if 語句

一個 'if' 語句由一個布林表示式和一個或多個語句組成。

2. if...else 語句

一個 'if' 語句後面可以跟一個可選的 'else' 語句,當布林表示式為假時執行。

3. else…if 和巢狀 if 語句

你可以在另一個 'if' 或 'else if' 語句內使用一個 'if' 或 'else if' 語句。

4. switch 語句

一個 'switch' 語句允許將一個變數與一個值的列表進行比較。

示例

讓我們透過一些 TypeScript 示例來詳細瞭解決策語句。

示例:if 語句

在下面的示例中,if 語句檢查條件 "age >= 18"。條件(布林表示式)為真,因此執行花括號 ({}) 中的語句。

let age: number = 19;
if (age >= 18) {
    console.log("You care eligible for voting.");
}

編譯後將生成以下 JavaScript 程式碼。

let age = 19;
if (age >= 18) {
    console.log("You care eligible for voting.");
}

上述示例程式碼的輸出如下:

You are eligible for voting.

那麼如果條件(布林表示式)age >= 18 評估為假呢?

如果條件為假,則執行 else 語句。

讓我們檢查以下示例:

示例:if…else 語句

在這個示例中,條件 (age >= 18) 評估為假,因此執行 else 語句後的語句。

let age: number = 17;
if (age >= 18) {
    console.log("You care eligible for voting.");
}
else {
    console.log("You are not eligible for voting.")
}

編譯後將生成以下 JavaScript 程式碼。

let age = 17;
if (age >= 18) {
    console.log("You care eligible for voting.");
}
else {
    console.log("You are not eligible for voting.")
}

上述示例程式碼的輸出如下:

You are not eligible for voting.

示例:巢狀 if 語句

在下面的示例中,else...if 梯用於檢查多個條件。條件 grade >= 80 評估為真,因此它將在控制檯中列印 "You got a B grade"。

var grade: number = 85;
if (grade >= 90) {
  console.log("You got an A grade");
} else if (grade >= 80) {
  console.log("You got a B grade ");
} else if (grade >= 70) {
  console.log("You got a C grade ");
} else if (grade >= 60) {
  console.log("You got a D grade ");
} else {
  console.log("You got an F grade ");
}

編譯後將生成以下 JavaScript 程式碼。

var grade = 85;
if (grade >= 90) {
  console.log("You got an A grade");
} else if (grade >= 80) {
  console.log("You got a B grade ");
} else if (grade >= 70) {
  console.log("You got a C grade ");
} else if (grade >= 60) {
  console.log("You got a D grade ");
} else {
  console.log("You got an F grade ");
}

上述示例程式碼的輸出如下:

You got a B grade

示例:switch 語句

在下面的示例中,我們使用 grade 變數作為 switch case 語句的表示式。它根據 case 常量 (A、B 和 C) 驗證 grade 的值並執行相應的程式碼塊。如果 grade 的值與任何 case 值都不匹配,則執行 default case。

var grade: string = 'B';
switch (grade) {
    case 'A': {
        console.log("Excellent");
        break;
    }
    case 'B': {
        console.log("Good");
        break;
    }
    case 'C': {
        console.log("Fair");
        break;
    }
    default: console.log("Unknown grade");
}

編譯後將生成以下 JavaScript 程式碼。

var grade = 'B';
switch (grade) {
    case 'A': {
        console.log("Excellent");
        break;
    }
    case 'B': {
        console.log("Good");
        break;
    }
    case 'C': {
        console.log("Fair");
        break;
    }
    default: console.log("Unknown grade");
}

上述示例程式碼的輸出如下:

Good
廣告
© . All rights reserved.