Record<K, T>
K : key
T : type
- TypeScript는 Version 2.1부터 Utility Type인 Record Type을 도입했습니다. Record Type은 Record <Key, Type> 형식으로 키가 Key이고 값이 Type인 객체 타입입니다.
* Record를 활용하기 전
interface Score {
"1" : "A" | "B" | "C" | "D"
"2" : "A" | "B" | "C" | "D"
"3" : "A" | "B" | "C" | "D"
"4" : "A" | "B" | "C" | "D"
}
const score:Score {
1 : "A",
2 : "C",
3 : "B",
4 : "D",
};
* Record를 활용한 코드
type Grade = "1" | "2" | "3" | "4";
type Score = "A" | "B" | "C" | "D";
const score:Record<Grade, Score> = {
1: "A",
2: "C",
3: "B",
4: "D",
}
* Record를 활용한 코드
interface User {
id: number;
name: string;
age: number;
}
function isValid(user:User) {
const result: Record<keyof User, boolean> = {
id : user.id > 0,
name : user.name !== '',
age : user.age > 0
}
return result;
}
'Study > TypeScript' 카테고리의 다른 글
[TypeScript_study] type지정을 쉽게 하는 팁 (0) | 2022.07.24 |
---|---|
[TypeScript] TypeScript & React SyntheticEvent(합성이벤트) (0) | 2022.07.22 |
[TypeScript_study] Pick & Omit & Exclude & NonNullable (0) | 2022.07.05 |
[TypeScript_study] 함수 오버로딩(Function Overloading) (0) | 2022.07.05 |
[TypeScript_study] Typescript 설치와 셋팅 & 간단 사용법(Vue, React 포함) (0) | 2022.06.26 |