상식닷컴
로그인
가입하기
2026년 상식닷컴 선정 식당 & 카페 리스트
2025년 2026년 신상 호텔 리스트
최근에 오픈한 호텔을 찾는다면 살펴보세요
일주일 식단표 어플
자동 일주일 식단표 어플
안드로이드
아이폰
주식 & 코인 차트의 신
1000만원으로 2000만원 만들기 프로젝트
수정하기 - 타입스크립트에서 Pick과 Omit의 차이는 무엇인가요?
닉네임
비밀번호
제목
내용
[이미지 업로드는 권한이 있는 사람만 가능. 하단 카톡으로 연락]
TypeScript에서 `Pick`과 `Omit`은 <a href='https://sangseek.com/sangseeks/객체/ko'>객체</a> 타입을 조작하는 데 유용한 유틸리티 타입입니다. 이 두 가지는 비슷한 목적을 가지고 있지만, 그 사용 방식과 결과는 다릅니다. 아래에서 각각의 개념과 차이점을 자세히 설명하겠습니다. 1. Pick `Pick`은 주어진 타입에서 특정 속성만 선택하여 새로운 타입을 생성하는 유틸리티 타입입니다. 즉, 원래 객체의 일부 속성만을 포함하는 새로운 타입을 만들고 싶을 때 사용합니다. 사용법 ```typescript interface Person { name: string; age: number; email: string; } type PersonNameAndEmail = Pick<Person, 'name' | 'email'>; // PersonNameAndEmail 타입은 다음과 같습니다: // { // name: string; // email: string; // } ``` 위의 예제에서 `Pick`은 `Person` 인터페이스에서 `name`과 `email` 속성만을 선택하여 `PersonNameAndEmail` 타입을 생성합니다. 이로 인해 `PersonNameAndEmail` 타입은 `name`과 `email` 속성만을 포함하게 됩니다. 2. Omit `Omit`은 주어진 타입에서 특정 속성을 제외하고 새로운 타입을 생성하는 유틸리티 타입입니다. 즉, 원래 객체의 모든 속성 중에서 특정 속성만을 제외한 나머지를 포함하는 새로운 타입을 만들고 싶을 때 사용합니다. 사용법 ```typescript interface Person { name: string; age: number; email: string; } type PersonWithoutEmail = Omit<Person, 'email'>; // PersonWithoutEmail 타입은 다음과 같습니다: // { // name: string; // age: number; // } ``` 위의 예제에서 `Omit`은 `Person` 인터페이스에서 `email` 속성을 제외하고 `name`과 `age` 속성만을 포함하는 `PersonWithoutEmail` 타입을 생성합니다. 3. 차이점 요약 - 기능적 차이 : - `Pick`은 특정 속성만 선택하여 새로운 타입을 생성합니다. - `Omit`은 특정 속성을 제외하고 나머지 속성으로 새로운 타입을 생성합니다. - 사용 예시 : - `Pick`은 필요한 속성만을 가져와서 사용하고자 할 때 유용합니다. 예를 들어, API 응답에서 특정 필드만 필요할 때 사용합니다. - `Omit`은 불필요한 속성을 제거하고자 할 때 유용합니다. 예를 들어, 데이터베이스 모델에서 사용자 비밀번호와 같은 민감한 정보를 제외하고자 할 때 사용합니다. 4. 결론 `Pick`과 `Omit`은 TypeScript에서 객체 타입을 다루는 데 매우 유용한 도구입니다. 이 두 유틸리티 타입을 적절히 활용하면 코드의 가독성을 높이고, 타입 안전성을 강화할 수 있습니다. 객체의 속성을 선택하거나 제외하는 작업은 자주 발생하는 패턴이므로, 이 두 가지를 잘 이해하고 사용하는 것이 중요합니다.
이용안내
커뮤니티 이용안내
×
- 게시한 게시글로 발생하는 문제는 게시자에게 책임이 있습니다.
- 게시글이 타인/타업체의 저작권을 침해할 경우 모든 책임은 게시자에게 있습니다. 게시자가 모든 손해를 부담해야 합니다.
- 상식닷컴 운영자는 게시자와 상의하지 않고 게시글을 수정 또는 삭제할 수 있습니다.
- 상식닷컴 운영자는 깨끗한 커뮤니티 공간을 만드는 것이 1순위입니다.
수정하기
취소하기