본문 바로가기
Front-End

[Typescript] Generic

by kimik 2021. 7. 15.

타입스크립트의 제네릭은 선언 시점이 아니라 생성 시점에 타입을 명시하여 하나의 타입만이 아닌 다양한 타입을 사용할 수 있도록 하는 기법으로 한번의 선언으로 여러가지 타입에 재사용 할수 있다.

 

function reverse<T>(items: T[]): T[] {
  return items.reverse();
}

위와같이 제네릭을 선언하면 넘어오는 파라미터 타입에 따라 타입이 정해진다.

 

function reverse<T>(items: T[]): T[] {
  return items.reverse();
}

const arg = [1, 2, 3, 4, 5];
// 인수에 의해 타입 매개변수가 결정된다.
const reversed = reverse(arg);
console.log(reversed); // [ 5, 4, 3, 2, 1 ]

다양한 타입을 받아야하는 함수에서 활용하는게 좋지만, 함수만보고 어떤 타입이 넘어올지 알 수 없기 때문에 

 

정확한 타입이 넘어오는 경우에는 제네릭이 아닌 타입을 직접 지정하는 것이 좋다.

댓글