TypeScript高级类型:联合类型、交叉类型和类型别名
// 定义一个交叉类型
type MergedType = {
name: string;
} & {
age: number;
};
// 使用交叉类型
let user: MergedType = {
name: 'Alice',
age: 25
};
// 定义一个联合类型
type UnionType = string | number;
// 使用联合类型
let variable: UnionType = 'hello';
variable = 123; // 正确
// variable = true; // 错误,因为true不是string或number类型
// 定义类型别名
type AliasType = {
id: string;
value: string | number;
};
// 使用类型别名
let entry: AliasType = {
id: '001',
value: 'sample'
};
entry.value = 123; // 正确,因为value是string|number类型
这段代码展示了如何在TypeScript中定义和使用交叉类型、联合类型和类型别名。交叉类型是多个类型的属性合并在一起,联合类型允许一个变量同时为多种类型中的一种,而类型别名是为一个类型定义了一个新名称。
评论已关闭