[TypeScript] 유틸리티 타입(Record)

종현·2024년 1월 10일

[TypeScript]

목록 보기
18/19

Record 유틸리티 타입

  • 타입 1개를 속성의 키로 받고 다른 타입 1개를 속성 값으로 받아 객체 타입으로 변환해준다.

예시

  • 첫 번째 제네릭 타입으로 받았던 HeroNames의 문자열 타입을 키로, 값은 두 번째 제네릭으로 받았던 HeroProfile타입의 형태를 갖는다.
type HeroProfile = {
  skill: string;
  age: number;
}

type HeroNames = 'iron man' | 'hulk' | 'thor'

type Heroes = Record<HeroNames, HeroProfile>;
/** Heroes의 타입
*   type Heroes = {
*     iron man: HeroProfile;
*     hulk: HeroProfile;
*     thor: HeroProfile;
*   }
*/
  • 첫 번째와 두 번째 제네릭 타입으로 모두 문자열을 넘겨, 타입을 생성하고 키와 값이 문자열인 여러 개를 정의할 수 있다.
type PhoneBook = Record<string, string>; // type Phonebook = { [x: string]: stirng; } 

const family: Phone = {
  mom: '010-1111-1111',
  dad: '010-2222-2222',
  bro: '010-3333-3333',
  sis: '010-5555-5555'
}

문법

Record<객체 속성의 키로 사용할 타입, 객체 속성의 값으로 사용할 타입>

출처: 쉽게 시작하는 타입스크립트

profile
지속 가능한 성장 습관을 만들어 나가고 싶어요!

0개의 댓글