타입스크립트 기초 문법 - 제너릭

Cornflower blue·2022년 8월 26일
0

3.6 제너릭

제너릭을 이용해 여러 타입에 대해 동일한 규칙을 갖고 동작하는 타입을 손쉽고 우아하게 정의할 수 있다.

여러 타입에 대해 동작하는 함수를 정의하되, 해당 함수를 정의할 때는 알 수 없고 사용할 때에만 알 수 있는 타입 정보를 사용하고 싶다. 제너리긍ㄴ 바로 그러한 기능을 제공한다.

타입 변수

함수를 호출하는 시점이 되어야만 알 수 있는 값을 함수 내부에서 사용하기 위해서는 그 값을 담아둘 매개변수가 필요하다. 마찬가지로, 요소를 사용하는 시점에서만 알 수 있는 타입을 담아두기 위해서는 타입 변수가 필요하다. 타입변수와 타입 관계는 매개변수와 인자 값의 관계와 비슷하다.

타입 변수는 부등호 (<. >)로 변수명을 감싸 정의한다. 이렇게 정의한 타입 변수를 요소의 타입정의에 사용할 수 있다. 부등호 기호안에 정의된 타입변수의 실제 타입은 실제 값이 넘어오는 시점에 결정된다. 컨벤션 상 타입스크립트의 타입 변수는 대문자로 시작하며 PascalCase 명명법을 사용한다.

제너릭 함수

타입 변수를 이용해 위의 getFirstElem 함수를 다음과 같이 제너릭 함수로 정의할 수 있다.

function getFirstElem<T>(arr: T[]): T{}

출처 : https://ahnheejong.gitbook.io/ts-for-jsdev/03-basic-grammar/generics

profile
무언가를 만들어낸다는 것은 무척이나 즐거운 일입니다.

0개의 댓글