
- TypeScript 基礎
- TypeScript - 首頁
- TypeScript - 路線圖
- TypeScript - 概述
- TypeScript - 環境設定
- TypeScript - 基本語法
- TypeScript 與 JavaScript
- TypeScript - 特性
- TypeScript - 變數
- TypeScript - let & const
- TypeScript - 運算子
- TypeScript 基本型別
- TypeScript - 型別
- TypeScript - 型別註解
- TypeScript - 型別推斷
- TypeScript - 數字
- TypeScript - 字串
- TypeScript - 布林值
- TypeScript - 陣列
- TypeScript - 元組
- TypeScript - 列舉
- TypeScript - Any
- TypeScript - Never
- TypeScript - 聯合型別
- TypeScript - 字面量型別
- TypeScript - 符號
- TypeScript - null vs. undefined
- TypeScript - 類型別名
- TypeScript 控制流
- TypeScript - 決策
- TypeScript - If 語句
- TypeScript - If Else 語句
- TypeScript - 巢狀 If 語句
- TypeScript - Switch 語句
- TypeScript - 迴圈
- TypeScript - For 迴圈
- TypeScript - While 迴圈
- TypeScript - Do While 迴圈
- TypeScript 函式
- TypeScript - 函式
- TypeScript - 函式型別
- TypeScript - 可選引數
- TypeScript - 預設引數
- TypeScript - 匿名函式
- TypeScript - 函式構造器
- TypeScript - Rest 引數
- TypeScript - 引數解構
- TypeScript - 箭頭函式
- TypeScript 介面
- TypeScript - 介面
- TypeScript - 擴充套件介面
- TypeScript 類和物件
- TypeScript - 類
- TypeScript - 物件
- TypeScript - 訪問修飾符
- TypeScript - 只讀屬性
- TypeScript - 繼承
- TypeScript - 靜態方法和屬性
- TypeScript - 抽象類
- TypeScript - 訪問器
- TypeScript - 鴨子型別
- TypeScript 高階型別
- TypeScript - 交叉型別
- TypeScript - 型別守衛
- TypeScript - 型別斷言
- TypeScript 型別操作
- TypeScript - 從型別建立型別
- TypeScript - Keyof 型別運算子
- TypeScript - Typeof 型別運算子
- TypeScript - 索引訪問型別
- TypeScript - 條件型別
- TypeScript - 對映型別
- TypeScript - 模板字面量型別
- TypeScript 泛型
- TypeScript - 泛型
- TypeScript - 泛型約束
- TypeScript - 泛型介面
- TypeScript - 泛型類
- TypeScript 雜項
- TypeScript - 三斜線指令
- TypeScript - 名稱空間
- TypeScript - 模組
- TypeScript - 環境宣告
- TypeScript - 裝飾器
- TypeScript - 型別相容性
- TypeScript - 日期物件
- TypeScript - 迭代器和生成器
- TypeScript - Mixins
- TypeScript - 實用程式型別
- TypeScript - 裝箱和拆箱
- TypeScript - tsconfig.json
- 從 JavaScript 到 TypeScript
- TypeScript 有用資源
- TypeScript - 快速指南
- TypeScript - 有用資源
- TypeScript - 討論
TypeScript - 布林值
TypeScript 的布林型別表示邏輯值,例如 true 或 false。邏輯值用於控制程式中執行流程。由於 JavaScript 提供了布林原始型別和物件型別,因此 TypeScript 添加了型別註解。我們可以建立布林原始型別以及布林物件。
我們可以使用 Boolean() 建構函式和 new 關鍵字建立布林物件。
要將非布林值轉換為布林值,我們應該使用 Boolean() 函式或雙重否定 (!!) 運算子。我們不應將 Boolean 建構函式與 new 關鍵字一起使用。
語法
要在 TypeScript 中宣告布林值(原始值),我們可以使用關鍵字“boolean”。
let varName: boolean = true;
在上述語法中,我們宣告一個布林變數 varName 併為其賦值 true。
要建立布林物件,我們使用 Boolean() 建構函式和 new 關鍵字。
const varName = new Boolean(value);
在上述語法中,value 是要轉換為布林物件的表示式。使用 new 的 Boolean() 建構函式返回一個包含布林值的物件。
例如,
const isTrue = new Boolean(true);
在上面的示例中,isTrue 持有值 true,而 isFalse 持有值 false。
型別註解
TypeScript 中的型別註解是可選的,因為 TypeScript 可以自動推斷變數的型別。我們可以使用 boolean 關鍵字來註解布林變數的型別。
let isPresent : boolean = true; // with type annotation let isPresent = true // without type annotation
與變數一樣,函式引數和返回型別也可以進行註解。
真值和假值
在 TypeScript 中,假值是被評估為 false 的值。有六個假值:
- false
- 0(零)
- 空字串("")
- null
- undefined
- NaN
所有其他值都是真值。
將非布林值轉換為布林值
所有上述討論的假值都被轉換為 false,真值被轉換為 true。要將非布林值轉換為布林值,我們可以使用 Boolean() 函式和雙重否定 (!!) 運算子。
使用 Boolean() 函式
TypeScript 中的 Boolean() 函式將非布林值轉換為布林值。它返回一個原始布林值。
let varName = Boolean(value);
value 是要轉換為布林值的表示式。
示例
在下面的示例中,我們使用 Boolean() 函式將非布林值轉換為布林值。
const myBoolean1 = Boolean(10); console.log(myBoolean1); // true const myBoolean2 = Boolean(""); console.log(myBoolean2); // false
編譯後,以上程式碼將在 JavaScript 中生成相同的程式碼。執行 JavaScript 程式碼將產生以下輸出:
true false
使用雙重否定 (!!) 運算子
TypeScript 中的雙重否定 (!!) 運算子將非布林值轉換為布林值。它返回一個原始布林值。
let varName = !!(value);
value 是要轉換為布林值的表示式。
示例
在下面的示例中,我們使用雙重否定 (!!) 運算子將非布林值轉換為布林值。
const myBoolean1 = !!(10); console.log(myBoolean1); // true const myBoolean2 = !!(""); console.log(myBoolean2); // false
編譯後,以上程式碼將在 JavaScript 中生成相同的程式碼。執行 JavaScript 程式碼將產生以下輸出:
true false
布林運算
TypeScript 中的布林運算或邏輯運算可以使用三個邏輯運算子來執行:邏輯 AND、OR 和 NOT 運算子。這些運算返回一個布林值(true 或 false)。
示例:邏輯 AND (&&)
在下面的示例中,我們定義了兩個布林變數 x 和 y。然後執行這些變數的邏輯 AND (&&)。
let x: boolean = true; let y: boolean = false; let result: boolean = x && y; console.log(result); // Output: false
編譯後,它將生成以下 JavaScript 程式碼。
var x = true; var y = false; var result = x && y; console.log(result); // Output: false
以上示例程式碼的輸出如下:
false
示例:邏輯 OR (||)
在下面的示例中,我們執行兩個布林變數 x 和 y 的邏輯 OR (||) 運算。
let x: boolean = true; let y: boolean = false; let result: boolean = x || y; console.log(result); // Output: true
編譯後,它將生成以下 JavaScript 程式碼。
var x = true; var y = false; var result = x || y; console.log(result); // Output: true
以上示例程式碼的輸出如下:
true
示例:邏輯 NOT (!)
在下面的示例中,執行布林變數 isPresent 的邏輯 NOT (!) 運算。
let isPresent: boolean = false; let isAbsent:boolean = !isPresent; console.log(isAbsent); // Output: true
編譯後,它將在 JavaScript 中生成相同的程式碼。
以上示例程式碼的輸出如下:
true
使用布林值的條件表示式
示例:If 語句
下面的示例展示瞭如何在 if else 語句中使用布林值的條件表示式。
let age: number = 25; let isAdult: boolean = age >= 18; if (isAdult) { console.log('You are an adult.'); } else { console.log('You are not an adult.'); }
編譯後,它將生成以下 JavaScript 程式碼:
let age = 25; let isAdult = age >= 18; if (isAdult) { console.log('You are an adult.'); } else { console.log('You are not an adult.'); }
以上示例程式碼的輸出如下:
You are an adult.
示例:條件語句(三元運算子)
嘗試以下示例:
let score: number = 80; let isPassing: boolean = score >= 70; let result: string = isPassing ? 'Pass' : 'Fail'; console.log(result); // Output: Pass
編譯後,它將生成以下 JavaScript 程式碼:
let score = 80; let isPassing = score >= 70; let result = isPassing ? 'Pass' : 'Fail'; console.log(result); // Output: Pass
以上示例程式碼的輸出如下:
Pass
TypeScript Boolean 與 boolean
Boolean 與 boolean 型別不同。Boolean 不引用原始值。而 boolean 是 TypeScript 中的原始資料型別。您應該始終使用小寫字母的 boolean。
布林物件
如上所述,我們可以使用 Boolean 建構函式和 new 關鍵字建立一個包含布林值的布林物件。Boolean 包裝類為我們提供了不同的屬性和方法來處理布林值。
布林屬性
以下是布林物件屬性的列表:
序號 | 屬性 & 描述 |
---|---|
1 | constructor 返回對建立物件的 Boolean 函式的引用。 |
2 | prototype prototype 屬性允許您向物件新增屬性和方法。 |
在以下部分,我們將有一些示例來說明布林物件的屬性。
布林方法
以下是布林物件方法及其描述的列表。
序號 | 方法 & 描述 |
---|---|
1 | toSource() 返回一個包含布林物件原始碼的字串;您可以使用此字串建立等效的物件。 |
2 | toString() 根據物件的值返回“true”或“false”字串。 |
3 | valueOf() 返回布林物件的原始值。 |
在以下部分,我們將有一些示例來演示布林方法的使用。