본문 바로가기
Front-end (프론트엔드)/Typescript(타입스크립트)

[프론트엔드] 타입스크립트 - Parital, Pick, Omit 타입 분석

by dreamer10457 2024. 5. 17.
반응형

 

interface Profile{
    name:string;
    phone:number;
    married:boolean
}

const devbit:Profile={
   name:"devbit",
   phone:123,
   married:false 
}

// Partial
type PartialSample<T> ={
    [key in keyof T]?:T[key]
} 

const devbitPartial: PartialSample<Profile>={
    name:"devbit",
    phone:123,
}

// Pick 
type PickSample<T,U extends keyof T>={
    [key in U]:T[key]
}

const devbitPick:PickSample<Profile,"name"|"phone">={
    name:"devbit",
    phone:123
}

// Omit 
type OmitSample<T,U extends keyof any>=Pick<T,Exclude<keyof T,U>>

const devbitOmit:OmitSample<Profile,"phone">={
    name:"devbit",
    married:false,
}

 

https://www.typescriptlang.org/docs/handbook/utility-types.html

반응형