-
object의 index signaturesTypescript 2022. 6. 18. 02:40
오브젝트에 타입지정할 속성이 너무 많거나 어떤 속성이 들어올 수 있는지 아직 모르는 경우 index signatures를 사용하면 편리하다.
interface StringOnly { [key: string]: string } let obj :StringOnly = { name : 'kim', age : '20', location : 'seoul' }
이렇게 적으면 모든 string타입의 키의 value값들은 string타입을 가진다가 된다.
또한
interface MyType { 'font-size' : { 'font-size' : { 'font-size' : number } } } let obj = { 'font-size' : { 'font-size' : { 'font-size' : 14 } } }
이렇게 복잡한 오브젝트안에 오브젝트안에 오브젝트안에 있는 이런거에 타입을 지정할 때, 위처럼 써도 되지만
recursive하게 타입을 만들 수 있는데,
interface MyType { 'font-size' : MyType | number }
이렇게 font-size안에 MyType과 똑같은게 들어오거나 number가 들어오게 짜서 보기 쉽게 짤 수 있다.
'Typescript' 카테고리의 다른 글
Object타입 변환기 만들기, 조건문이용과 infer (0) 2022.06.18 implements키워드 (0) 2022.06.18 d.ts파일 이용하기 (0) 2022.06.18 외부파일 이용시 declare & ambient module (0) 2022.06.17 array에 붙이는 tuple type (0) 2022.06.17