유틸리티 타입

장유진·2022년 6월 28일
1

TypeScript

목록 보기
13/14

Partial

모든 속성들을 optional하게 변경한다.

Required

모든 속성들을 required 속성으로 만들어준다. Partial과 반대

ReadOnly

모든 속성들을 읽기 전용(readOnly)으로 설정한 타입을 구성한다. 즉 모든 속성들의 값을 변경할 수 없고 참조만 할 수 있도록 만든다.

NonNullable

주어진 타입 T에서 null과 undefined를 제외한 타입을 구성한다.

ReturnType

T의 return type을 그대로 할당한다.

type T0 = ReturnType<() => string>; // string
type T1 = ReturnType<(s: string) => void>; // void

Pick<T, K>

특정 타입에서 몇 개의 속성을 선택하여 타입을 정의한다.

interface Product {
  id: number;
  name: string;
  price: number;
  brand: string;
  stock: number;
}
 
type shoppingItem = Pick<Product, "id" | "name" | "price">;

Omit<T, K>

특정 속성만 제거한 타입을 정의한다. Pick과 반대

interface Product {
  id: number;
  name: string;
  price: number;
  brand: string;
  stock: number;
}
 
type shoppingItem = Omit<Product, "stock">;
profile
프론트엔드 개발자

0개의 댓글