dynamic keys

인덱스 타입 접근법

인덱스 타입은 키 이름이 정해져 있지 않거나 특정 속성 타입을 추출해야 할 때 객체 타입을 안전하게 다루게 합니다.

인덱스 시그니처

동적 속성의 값 제한

알 수 없는 문자열 키가 모두 같은 값 타입을 가져야 할 때 사용합니다.

[key: string]: number
명시 속성 일치

모든 속성이 규칙을 따름

인덱스 시그니처가 있으면 명시 속성도 그 값 타입과 호환되어야 합니다.

name: string
인덱스 접근

속성 타입 추출

객체 타입에서 특정 키의 값 타입만 꺼내 다른 타입에 재사용합니다.

User["id"]
keyof 결합

안전한 키 선택

keyof로 가능한 키만 받아 잘못된 속성 이름 접근을 막습니다.

K extends keyof T
동적 사전 키가 사용자 입력이나 외부 데이터에서 올 때 값 타입을 명확히 제한합니다.
배열 유사 number 인덱스는 JavaScript의 문자열 키 변환 특성도 함께 고려합니다.
재사용 API 모델의 특정 필드 타입을 중복 작성하지 않고 추출합니다.

인덱스 타입은 동적인 객체 접근을 허용하되 타입 안전성을 포기하지 않도록 균형을 맞춥니다.