- TypeScript 基礎
- TypeScript - 首頁
- TypeScript - 路線圖
- TypeScript - 概述
- TypeScript - 環境設定
- TypeScript - 基本語法
- TypeScript vs. 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 - Date 物件
- TypeScript - 迭代器和生成器
- TypeScript - Mixins
- TypeScript - 實用程式型別
- TypeScript - 裝箱和拆箱
- TypeScript - tsconfig.json
- 從 JavaScript 到 TypeScript
- TypeScript 有用資源
- TypeScript - 快速指南
- TypeScript - 有用資源
- TypeScript - 討論
TypeScript - 邏輯運算子示例
邏輯運算子用於組合兩個或多個條件。邏輯運算子也返回布林值。假設變數 A 的值為 10,B 的值為 20。
| 運算子 | 描述 | 示例 |
|---|---|---|
| && (並且) | 只有當所有指定的表示式都返回 true 時,運算子才返回 true | (A > 10 && B > 10) 為假 |
| || (或) | 如果至少一個指定的表示式返回 true,則運算子返回 true | (A > 10 || B >10) 為真 |
| ! (非) | 運算子返回表示式的結果的反值。例如:!(>5) 返回 false | !(A >10 ) 為真 |
示例
var avg:number = 20;
var percentage:number = 90;
console.log("Value of avg: "+avg+" ,value of percentage: "+percentage);
var res:boolean = ((avg>50)&&(percentage>80));
console.log("(avg>50)&&(percentage>80): ",res);
var res:boolean = ((avg>50)||(percentage>80));
console.log("(avg>50)||(percentage>80): ",res);
var res:boolean=!((avg>50)&&(percentage>80));
console.log("!((avg>50)&&(percentage>80)): ",res);
編譯後,它將生成以下 JavaScript 程式碼。
var avg = 20;
var percentage = 90;
console.log("Value of avg: " + avg + " ,value of percentage: " + percentage);
var res = ((avg > 50) && (percentage > 80));
console.log("(avg > 50) && (percentage > 80): ", res);
var res = ((avg > 50) || (percentage > 80));
console.log("(avg > 50)||(percentage > 80): ", res);
var res = !((avg > 50) && (percentage > 80));
console.log("!((avg > 50)&&(percentage > 80)): ", res);
以上程式碼段將產生以下輸出:
Value of avg: 20 ,value of percentage: 90 (avg > 50)&&(percentage > 80): false (avg > 50)||(percentage > 80): true !((avg > 50)&&(percentage > 80)): true
短路運算子 (&& 和 ||)
&& 和 || 運算子用於組合表示式。只有當兩個條件都返回 true 時,&& 運算子才返回 true。讓我們考慮一個表示式:
var a = 10 var result = ( a<10 && a>5)
在上面的示例中,a < 10 和 a > 5 是由 && 運算子組合的兩個表示式。這裡,第一個表示式返回 false。但是,&& 運算子要求兩個表示式都返回 true。因此,運算子跳過第二個表示式。
如果其中一個表示式返回 true,則 || 運算子返回 true。例如:
var a = 10 var result = ( a>5 || a<10)
在上面的程式碼段中,兩個表示式 a > 5 和 a < 10 由 || 運算子組合。這裡,第一個表示式返回 true。由於第一個表示式返回 true,因此 || 運算子跳過後續表示式並返回 true。
由於 && 和 || 運算子的這種行為,它們被稱為短路運算子。
typescript_operators.htm
廣告