minstudio

유틸리티 타입 2 (Pick, Omit)

Pick은 마트 진열대에서 원하는 물건만 카트에 골라 담는(Pick) 기능이며, Omit은 장바구니에서 원하지 않는 물건만 버리고 나머지를 다 가져가는 기능입니다.

🛒 객체 쇼핑과 버리기 (Pick / Omit) 🛒 Pick (골라 담기) 거대한 User 객체에서 "name"과 "email"만 뽑아서 사용! Pick<User, 'name' | 'email'> 🗑️ Omit (제외하기) 장바구니 전체 목록에서 비밀번호("password")만 쏙 빼고 사용! Omit<User, 'password'>
interface User {
    id: string;
    name: string;
    age: number;
    email: string;
}

// 1. Pick<T, K>: 엄청 큰 객체에서 내가 원하는 속성만 쏙 빼서 새 타입 생성
type UserPreview = Pick<User, "name" | "email">; 
// 결과: { name: string; email: string; }

// 2. Omit<T, K>: 특정 속성만 지우고 나머지는 전부 가져옴
type UserWithoutId = Omit<User, "id">; 
// 결과: { name: string; age: number; email: string; }
유틸리티 타입 2 (Pick, Omit) | Minstudio