Typescript 基础
2021-12-31 15:01:27

TS 类型别名,类型字面量

下面来补充 TS 中支持的另外两种特性。

类型别名

参考文档:Type Aliases

TS 允许你使用 type 关键字给冗长的类型起一个别名,让它可以更方便的被重用。

type PlusType = (x: number, y: number) => number
let sum: PlusType
let sum2: PlusType

// 支持联合类型
type StrOrNumber = string | number
let result2: StrOrNumber = '123'
result2 = 123

字面值类型

在类型声明处甚至可以填入字面值,它的功能和枚举一样?

// 最简单的字面值类型
let one: 1 = 1

//  联合类型 + 字面值实现类似枚举类型的效果
type Weekdays = 1 | 2 | 3 | 4 | 5

// 字符串字面量
type Directions = 'Up' | 'Down' | 'Left' | 'Right'
let toWhere: Directions = 'Up'