Record<keys,type>
Constructs an object type whose property keys are Keys and whose property values are Type. This utility can be used to map the properties of a type to another type.(官方描述)
简单理解为,构造一个对象类型,它的键值对是<keys,type>,将一个属性类型映射到另一个类型。
举例: 使用一组联合类型或枚举类型去定义一个类型
// 联合类型定义
type words = 'women' | 'man' | 'children'
const wordRecord: Record<words,number> = {
women: 11,
man: 10,
children: 5
}
// 枚举类型定义
enum EWords = {
Women: 'women',
Man: 'man',
Children: 'children'
}
type WordRecord = Record<EWords,number>
const example: WordRecord ={
[EWords.Women]: 10,
[EWords.Man]: 8,
[EWords.Children]: 6
}