key iteration

매핑된 타입 변환표

매핑된 타입은 기존 객체 타입의 키를 순회하며 readonly, optional, 값 타입을 일괄 변환합니다.

키 순회

keyof와 in

객체 타입의 속성 이름들을 유니온으로 꺼내 하나씩 새 속성으로 만듭니다.

[P in keyof T]
수정자

readonly와 optional 조절

+readonly, -readonly, -? 같은 표기로 속성 한정자를 바꿉니다.

-readonly [P in K]
키 다시 매핑

as로 이름 변경

템플릿 리터럴 타입과 함께 속성 이름을 새 규칙으로 바꿀 수 있습니다.

as `get${Capitalize<K>}`
내장 유틸리티

Partial과 Readonly

자주 쓰는 객체 변환은 표준 유틸리티 타입으로 이미 제공됩니다.

Partial<T>
대상 확인 객체 타입 전체에 같은 변환 규칙을 적용할 때 매핑된 타입이 적합합니다.
옵션 제거 Required처럼 선택 속성을 필수로 바꿀 때 -? 수정자를 사용합니다.
이름 생성 getter 이름이나 이벤트 이름을 타입에서 만들 때 as 절을 활용합니다.

매핑된 타입은 객체 타입의 반복 수정을 수작업 대신 타입 규칙으로 자동화합니다.