유틸리티 타입(Utility types)
- 타입스크립트는 공통 타입 변환을 용이하게 하기 위해 유틸리티 타입을 제공한다.
- 유틸리티 타입은 전역으로 사용 가능하다.
- 종류
-Partial<T>
, Readonly<T>
-Record<K,T>
, Pick<T,K>
-Omit<T,K>
, Exclude<T,U>
, Extract<T,U>
-NonNullable<T>
, Parameters<T>
, ConstructorParameters<T>
-Return Type<T>
, Required<T>
1. Partial
- 프로퍼티를 선택적으로 만드는 타입을 구성한다.
- 주어진 타입의 모든 하위 타입 집합을 나타내는 타입을 반환한다.
2. Readonly
- 프로터티를 읽기 전용(readonly)으로 설정한 타입을 구성한다.
3. Record<K, T>
- 프로퍼티의 집합 K로 타입을 구성한다.
- 타입의 프로퍼티들을 다른 타입에 매핑시키는 데 사용한다.
4. Pick<T, K>
- 프로퍼티 K의 집합을 선택해 타입을 구성한다.
5. Omit<T,K>
- 모든 프로퍼티를 선택한 다음 K를 제거한 타입을 구성한다.
6. Exclude<T,U>
- T에서 U에 할당할 수 있는 모든 속성을 제외한 타입을 구성한다.
- T에서 U에 할당할 수 있는 모든 속성을 추출하여 타입을 구성한다.
8. NonNullable
- null과 undefined를 제외한 타입니다.
9. Parameters
- 함수 타입 T의 매개변수 타입들의 튜플타입을 구성한다.
10. ConstructorParameters
- 생성자 함수 타입의 모든 매개변수 타입을 추출한다.
- 모든 매개변수 타입을 가지는 튜플 타입(T가 함수가 아닌 경우 never)을 생성한다.
11. Return Type
- 함수 T의 반환 타입으로 구성된 타입을 생성한다.
12. Required
- T의 모든 프로퍼티가 필수로 설정된 타입을 구성한다.