从类型创建类型
TypeScript 的类型系统非常强大,因为它允许用其他类型来表达类型。
这个想法最简单的形式是泛型,我们实际上有各种各样的类型运算符可供使用。也可以用我们已经拥有的值来表达类型。
通过组合各种类型的操作符,我们可以用简洁、可维护的方式表达复杂的操作和值。在本节中,我们将介绍根据现有类型或值来表达新类型的方法。
- 泛型 - 带参数的类型
- Keyof 类型运算符 - 使用
keyof
运算符创建新类型 - Typeof 类型运算符 - 使用
typeof
运算符创建新类型 - 索引访问类型 - 使用
Type['a']
语法访问类型的子集 - 条件类型 - 类似于类型系统中的 if 语句的类型
- 映射类型 - 通过映射现有类型中的每个属性来创建类型
- 模板字面类型 - 通过模板字面字符串更改属性的映射类型