더북(TheBook)

3.1 Partial, Required, Readonly, Pick, Record

Partial, Required, Readonly, Pick, Record는 타입스크립트 공식 사이트의 Reference1 중 Utility Types에서 매핑된 객체 타입을 사용하는 것만 추린 것입니다.

먼저 기존 객체의 속성을 전부 옵셔널로 만드는 Partial 함수입니다.

type MyPartial<T> = {
  [P in keyof T]?: T[P];
};

type Result = MyPartial<{ a: string, b: number }>;
/*
type Result = {
  a?: string | undefined;
  b?: number | undefined;
}
*/

2.22절과 같은 이유로 타입 이름 앞에 My를 붙였습니다. My를 붙이지 않으면 lib.es5.d.ts의 선언과 중복되기 때문입니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.