在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
ts可以使用泛型来做类型映射,将对象或数组中类型转换为另一个类型。 例如: 定义一个类型 interface Student{
name: string,
age: number
}
1. 把一个类型的每个属性都变为可空的 type Nullable<T> = { [p in keyof T]: T[P] | null } type NullableStudent = Nullable<Student> 2. 把一个类型的每个属性都变为只读的 //定义readonly映射 type Readonly<T> = { readonly [P in keyof T]: T[P] } type ReadonlyStudent = Readonly<Student> 3. 把一个类型的属性都变为可选的 type Partical<T> = { [P in keyof T]?: T[P] } type ParticalStudent = Partical<Student> 4. 把一个类型的每个项都变为Promise //定义toPromise映射 type ToPromise<T> = { [K in keyof T]: Promise<T[K]> }; type Coordinate = [number, number] type PromiseCoordinate = ToPromise<Coordinate>; // [Promise<number>, Promise<number>]
|
请发表评论