TypeScript

인덱스 타입

인덱스 타입은 객체의 key 집합과 특정 key의 value 타입을 타입 시스템에 그대로 반영합니다. `keyof T`, `T[K]`, index signature를 구분해야 속성 이름을 문자열로 다루면서도 잘못된 key 접근을 컴파일 단계에서 막을 수 있습니다.

keyof, 인덱스 접근 타입, 매핑된 타입으로 객체 키와 값 타입을 안전하게 재사용하는 방식을 확인합니다.

1

인덱스 시그니처

인덱스 시그니처(Index Signatures)는 객체가 가질 수 있는 속성들의 이름과 값의 타입을 미리 정의하지 않고, 속성 이름의 타입과 속성 값의 타입만으로 객체의 형태를 유연하게 정의할 때 사용됩니다.

인덱스 타입(Index Types)
2

인덱스 접근 타입

인덱스 접근 타입(Indexed Access Types / Lookup Types)은 기존 객체 타입에서 특정 속성의 타입을 T[K] 문법을 사용하여 추출하는 기능입니다.

매핑된 타입
3

인덱스 타입의 활용

인덱스 타입과 매핑된 타입을 함께 쓰면 기존 객체 타입을 순회해 readonly, optional, nullable 같은 변환을 만들 수 있습니다.

인덱스 시그니처 (Index Signatures)