본문 바로가기
Typescript

[Typescript] Omit? Partial? Pick?

by devebucks 2022. 10. 11.
728x90

Partial

특정 타입의 부분 집합을 만족하는 타입을 정의할 수 있다.

interface Product {
  id: number,
  name: string,
  price: number
}


type PartialProduct = Partial<Product>

const empty: PartialProduct = {};
const water: PartialProduct = {name: 'water'};
const paper: PartialProduct = {price: 1000};

 

 

Pick

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

type CreateTodo = Pick<Todo, "id" | "name" | "price">;

Omit

특정 속성만 제거한 타입을 정의합니다.

type CreateTodo = Omit<Todo, 'id'>;

 

interface Product {
  id: number;
  name: string;
  price: number;
}


type displayProduct = Omit<Product, "id">;


const water: Omit<Product, "id"> = {
  name: water,
  price: 1000
}

 

 

 

참고

https://kyounghwan01.github.io/blog/TS/fundamentals/utility-types/#partial

728x90

댓글