타입스크립트의 제네릭은 선언 시점이 아니라 생성 시점에 타입을 명시하여 하나의 타입만이 아닌 다양한 타입을 사용할 수 있도록 하는 기법으로 한번의 선언으로 여러가지 타입에 재사용 할수 있다.
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 ]
다양한 타입을 받아야하는 함수에서 활용하는게 좋지만, 함수만보고 어떤 타입이 넘어올지 알 수 없기 때문에
정확한 타입이 넘어오는 경우에는 제네릭이 아닌 타입을 직접 지정하는 것이 좋다.
'Front-End' 카테고리의 다른 글
[NextJS] Viewport에 들어온 컴포넌트만 불러오기 (0) | 2022.04.17 |
---|---|
yarn berry로 workspace(monorepo) 구성하기 (3) | 2021.09.20 |
[flutter] flutter의 상태관리 라이브러리 GetX (1) | 2021.07.08 |
[flutter] 플러터 입문 (0) | 2021.07.01 |
[React Native Web] 에러 정리 (7) | 2021.06.01 |
댓글