ts中的联合类型与交叉类型

文章类型:TypeScript

发布者:hp

发布时间:2023-05-27

一:定义

1:联合类型:

用于表示一个值可以是多个类型之一

使用 | 符号将多个类型组合成联合类型

let value: string | number;
value = "hello"; // value 可以是字符串类型
value = 10; // value 可以是数字类型

2:交叉类型

用于组合多个类型,生成一个包含了多个类型特性的新类型

使用 & 符号将多个类型组合成交叉类型

interface A {
  name: string;
}

interface B {
  age: number;
}

let obj: A & B = {
  name: "John",
  age: 25
};

二:区别

1:联合类型使用 | 符号,交叉类型使用 & 符号

2:联合类型用于表示一个值可以是多个类型中的一种,交叉类型用于表示一个值具备多个类型的特性

3:联合类型适用于表示多种可能类型的情况,交叉类型适用于合并多个类型的特性


三:总结

1:合理运用联合类型和交叉类型,可以提高代码的类型安全性、可读性和可维护性