跳到主要内容

TypeScript 运算符

介绍

在 TypeScript 中,运算符是用于执行各种操作的特殊符号。它们可以用于算术运算、比较值、逻辑判断等。TypeScript 的运算符与 JavaScript 的运算符几乎完全相同,但由于 TypeScript 是强类型语言,运算符的使用可能会受到类型的影响。

本文将逐步介绍 TypeScript 中的各种运算符,并通过代码示例帮助你理解它们的用法。


算术运算符

算术运算符用于执行基本的数学运算,如加法、减法、乘法和除法。

常用算术运算符

  • +:加法
  • -:减法
  • *:乘法
  • /:除法
  • %:取余
  • **:指数运算

示例

typescript
let a: number = 10;
let b: number = 3;

console.log(a + b); // 输出: 13
console.log(a - b); // 输出: 7
console.log(a * b); // 输出: 30
console.log(a / b); // 输出: 3.333...
console.log(a % b); // 输出: 1
console.log(a ** b); // 输出: 1000
提示

在 TypeScript 中,算术运算符的操作数必须是数字类型。如果操作数是其他类型(如字符串),TypeScript 会尝试将其转换为数字,但可能会导致意外结果。


比较运算符

比较运算符用于比较两个值,并返回一个布尔值(truefalse)。

常用比较运算符

  • ==:等于(值相等)
  • ===:严格等于(值和类型都相等)
  • !=:不等于
  • !==:严格不等于
  • >:大于
  • <:小于
  • >=:大于等于
  • <=:小于等于

示例

typescript
let x: number = 5;
let y: number = 10;

console.log(x == y); // 输出: false
console.log(x === y); // 输出: false
console.log(x != y); // 输出: true
console.log(x !== y); // 输出: true
console.log(x > y); // 输出: false
console.log(x < y); // 输出: true
console.log(x >= y); // 输出: false
console.log(x <= y); // 输出: true
警告

在 TypeScript 中,建议使用 ===!== 进行严格比较,以避免类型转换带来的意外行为。


逻辑运算符

逻辑运算符用于组合多个条件,并返回一个布尔值。

常用逻辑运算符

  • &&:逻辑与(所有条件为真时返回 true
  • ||:逻辑或(至少一个条件为真时返回 true
  • !:逻辑非(取反)

示例

typescript
let isTrue: boolean = true;
let isFalse: boolean = false;

console.log(isTrue && isFalse); // 输出: false
console.log(isTrue || isFalse); // 输出: true
console.log(!isTrue); // 输出: false
备注

逻辑运算符通常用于条件语句中,例如 if 语句。


赋值运算符

赋值运算符用于将值赋给变量。

常用赋值运算符

  • =:简单赋值
  • +=:加法赋值
  • -=:减法赋值
  • *=:乘法赋值
  • /=:除法赋值
  • %=:取余赋值

示例

typescript
let num: number = 10;

num += 5; // 等价于 num = num + 5
console.log(num); // 输出: 15

num -= 3; // 等价于 num = num - 3
console.log(num); // 输出: 12

num *= 2; // 等价于 num = num * 2
console.log(num); // 输出: 24

num /= 4; // 等价于 num = num / 4
console.log(num); // 输出: 6

条件(三元)运算符

条件运算符是唯一的三元运算符,用于根据条件返回不同的值。

语法

typescript
condition ? expr1 : expr2
  • 如果 conditiontrue,返回 expr1
  • 如果 conditionfalse,返回 expr2

示例

typescript
let age: number = 18;
let status: string = age >= 18 ? "成年人" : "未成年人";

console.log(status); // 输出: 成年人

实际应用场景

场景 1:计算商品折扣

假设你正在开发一个电商网站,需要根据用户的会员等级计算商品折扣。

typescript
let price: number = 100;
let isPremiumMember: boolean = true;

// 使用三元运算符计算折扣
let discount: number = isPremiumMember ? 0.2 : 0.1;
let finalPrice: number = price * (1 - discount);

console.log(`最终价格: ${finalPrice}`); // 输出: 最终价格: 80

场景 2:验证用户输入

在表单验证中,逻辑运算符可以用于检查多个条件。

typescript
let username: string = "admin";
let password: string = "123456";

if (username === "admin" && password === "123456") {
console.log("登录成功");
} else {
console.log("用户名或密码错误");
}

总结

TypeScript 提供了丰富的运算符,包括算术运算符、比较运算符、逻辑运算符、赋值运算符和条件运算符。通过本文的学习,你应该能够理解这些运算符的基本用法,并在实际开发中灵活运用。


附加资源与练习

  1. 练习 1:编写一个 TypeScript 程序,计算两个数的和、差、积和商,并输出结果。
  2. 练习 2:使用逻辑运算符编写一个程序,判断一个年份是否为闰年。
  3. 练习 3:尝试使用条件运算符实现一个简单的登录验证功能。
提示

如果你对运算符的使用还有疑问,可以参考 TypeScript 官方文档 或查阅相关教程。