JavaScript

타입스크립트 인덱스 시그니처 문법 (index signature)

aphyrince 2025. 7. 16. 16:01
반응형
interface StringArray {
  [index: 타입a]: 타입b;
}

객체의 속성에  obj['속성이름'] 형태로 접근할 때 (인덱싱), 속성이름이 '타입a' 이면 그 속성의 값은 반드시 '타입b'

'타입a' 인덱스로 접근할 수 있는 속성은 '타입b' 임을 보장.

interface StringArray {	
  [grade:string] : number;
  name : string;  	-> X
  address : number; 	-> O
}

위 예시의 경우, 인덱스 시그니처 문법으로 string으로 인덱싱 가능한 속성은 number 타입을 갖는다고 선언함.

이 때 name이나 address같은 속성을 추가하면, name과 address 의 속성명이 string 타입이므로 number와 호환 가능해야 함.

https://www.typescriptlang.org/docs/handbook/2/objects.html

반응형