TypeScript Record 타입

2024년 02월 13일

타입스크립트는 자주 사용하는 패턴들을 손쉽게 활용할 수 있게 유틸리티 타입을 제공한다. 그중 하나인 Record 에 대해 알아보자

Record

객체 형태의 타입을 정의할 때 사용한다. 키의 타입은 Keys, 값의 타입은 Type이다.

이런식으로 사용한다.

const obj: Record = {
	name: "Dugi",
  city: "Seoul"
}

//아래 타입과 같다.
const obj2: {[key:string]: string} = {
	name: "Dugi",
	city: "Seoul"
}

{[key:string]: string} 대신 Record 를 쓰는 이유가 있다. Record에서는 Keys 에 쉽게 다른 type을 대입할 수 있다.

type Keys = "name" | "city";

const obj: Record = {
  name: "Dugi",
  city: "Seoul"
}

//[key:string] 형태에서는 mapped type으로 가능하다.
const obj2: {[Key in Keys]: string} = {
	name: "Dugi",
	city: "Seoul",
	heart: "dd"
}

Ref


TAGS
TYPESCRIPT