TypeScript 中的字面量类型和联合类型特性

本文介绍了TypeScript中的两种重要类型特性:字面量类型和联合类型。字面量类型用于限制变量只能取特定的值,如success或error。联合类型则表示变量可以是多个类型中的任意一个,如字符串或数字,提供了灵活性。在使用联合类型时,只能访问所有类型共有的成员。这些特性增强了代码的可读性和安全性。
摘要由CSDN通过智能技术生成

字面量类型和联合类型是 TypeScript 中常用的类型特性。

1. 字面量类型: 字面量类型是指具体的值作为类型。例如,字符串字面量类型可以通过给定的字符串字面量来限制变量的取值范围。

let status: "success" | "error"; // status 只能是 "success" 或 "error"
status = "success"; // 正确
status = "error"; // 正确
status = "pending"; // 错误,只能是 "success" 或 "error"

2. 联合类型: 联合类型可以用来表示一个变量可以是多个类型中的任意一个。使用 | 符号来连接多个类型。

let result: string | number; // result 可以是字符串类型或数字类型
result = "hello"; // 正确
result = 42; // 正确
result = true; // 错误,只能是字符串类型或数字类型

联合类型的优点之一是它可以满足不同情况下的灵活性要求。例如,当处理多种类型的输入时,可以使用联合类型。

function printId(id: number | string) {
  console.log(id);
}

printId(123); // 输出: 123
printId("abc"); // 输出: "abc"
printId(true); // 错误,只能是数字或字符串类型

在使用联合类型时,需要注意的是联合类型的变量只能调用共有的成员。如果一个变量是联合类型的,那么只能使用该联合类型中共有的属性和方法。

let value: string | number;
value = "hello";
console.log(value.length); // 正确,字符串有 length 属性
value = 42;
console.log(value.length); // 错误,数字类型没有 length 属性

通过使用字面量类型和联合类型,我们可以更精确地定义变量的取值范围,增加代码的可读性和可维护性。它们是 TypeScript 中非常有用的类型特性。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值