TypeScript中的工具类型

工类型主要于处理和转换已有类型,它们不是实际的类型,而是用来处理类型的工具。简单来说,工具类型可以认为是TS类型的工具函数,把原有类型当参数来处理。 举一个简单的PartialI工具类型应用的例子:

//已有类型User
interface User {
name: string;
age: number;
}
//新类型PartialUser, 使用Partial将 属性都变成可选
type PartialUser = Partial<User>; // { name?: string; age?: number; }


常用工具类型有:
1. Partial <T> :将类型T的所有属性变为可选属性。
2. Required <T>| : 将类型T的所有属性变为必选属性。
3. Readonly <T> :将类型 T的所有 属性变为只读属性。
4. Record <KT>| :创建一 个类型, 中属性名为类型 K中的值, 属性值为类型T中的值。
5. Pick <TK> :从类型T中选择属性名为类型K中的属性,创建一 个新类型。
6. Omit <TK> | :从类型T中排除属性名为类型K中的属性,创建一 个新类型。
7. Exclude | <TU>| :从类型T中排除类型U中的所有属性。
8. Extract e <TU>| :从类型T中提取类型U中存在的所有属性。
9. NonNullable <T> : 从类型T中移除nullundefined10. ReturnType<T>:获取函数类型T的返回值类型