作用:生成一个新类型,所有属性变成可选项。该类型与 T 拥有相同的属性
interfacepartialInte{name: string,age: number
}
type parType = Partial<partialInte>// 相当于// 相当于
type parType ={
name?: string
age?: number
}
、、
constparNew: parType ={name:'123'}
3.Required
作用:生成一个新类型,所有属性变成必选项。该类型与 T 拥有相同的属性
interfacerequiredInte{
name?: string,
sex?: string
}
type reqtype = Required<requiredInte>// 相当于
type reqtype ={name: string
sex: string
}constreqNew: reqtype ={name:'1234',sex:'1'}
4.readonly
作用:生成一个新类型,把所有属性都变成可读属性。K 属性是只读的,K 属性是不可修改的。
interfacereadolyInit{name: string
age: number
}
type reatype = Readonly<readolyInit>// 相当于
type reatype ={
readonly name: string
readonly age: number
}constredNew: reatype ={name:'123',age:88}
5.Pick
生成一个新类型,只能定义继承的属性 也只能使用定义的属性。相当于T与K的交集
interfacepickInit{name: string;
age?: number;gender: string;}
type patype = Pick<pickInit,'age'|'gender'>// 相当于
type patype ={
age?: number
gender: string
}constpaNew: patype ={gender:'123',age:123}
6.Omit
作用:生成一个新类型,被定义的属性将会被删除 不能被子类使用。返回T 中除了 K 属性以外的所有属性
type omitInit ={name: string
age: number,sex: string
}
type mittype = Omit<omitInit,'age'>// 相当于
type mittype ={name: string,sex: string
}constmitNew: mittype ={name:'123',sex:'444'}