너와 나의 프로그래밍

Typescript - 배열 안 타입을 정의하는 방법 본문

Front-End/TypeScript

Typescript - 배열 안 타입을 정의하는 방법

Whatever App's 2020. 12. 9. 23:49

 

[Typescript] 배열 안 타입을 정의하는 방법

 

 

타입스크립트를 사용하면서 항상 빼놓을 수 없는 순간은 '타입 정의(Type Definition)'다.

 

보통 Interface나 Type Alias를 사용하면서 타입 정의를 하지만 배열 안 Type을 정의 할 때 어떻게 해야하는지 궁금해서 찾아봤다.

 

예를 들어, 이러한 코드가 있다고 가정해보자.

 

const arr: Array<object> = [{   name : 'test',   age  : 12,   isShowing: true }]  

선언된 매개변수를 그대로 사용할 시 아래와 같은 오류를 마주할 수 있다.

 

 

 

말 그대로 arr에 매개변수 안에 isShowing이라는 프로퍼티가 object 안에 없다는 얘기다.

 

이럴 때는 Custom하게 Interface를 사용하여 직접 object 안의 isShowing 대한 Type을 선언해 줘야한다.

 

 

먼저 인터페이스의 대한 이름을 TestInterface로 지정해주고 export하여 내보낼 interface의 대한 정의를 하고 그 뒤

 

extends를 추가하여 Array에 TestInterface를 넣어 Array안 object 안의 프로퍼티에 대한 Type을 선언 할 수 있다.

 

 

 

 

 

참고 : How can I define an interface for an array of objects with Typescript? - Stack Overflow

 

 

반응형