성장에 목마른 코린이

TypeScript 5. Generic 본문

TypeScript

TypeScript 5. Generic

성장하는 코린이 2022. 7. 30. 10:11
728x90

Generic

위의 예시는 일일이 필요한 Call Signature를 만들어 주는데,

Generic하게 사용하는 방법을 알려주겠다.

이 예시처럼 사용하면, 일일이 Call Signature를 지정해줄 필요가 없이 사용할 수 있다.

이런 식으로, 많이 사용하게 될 것이다.

이렇게 말고, any를 써도 되지 않나? 라는 생각이 들 수 있지만,

위의 예시처럼 만약 .toUpperCase() 메소드를 사용했을때,

숫자를 uppercase로 만들수 없기에 에러를 남겨줘야하지만 타입스크립트의 보호를 해제하기 때문에

아무런 에러를 남기지 않습니다.

만약 Generic 하게 사용하게 된다면, any의 예시와는 다르게 에러를 출력하는 것을 볼 수 있습니다.

Generic은 요구한 대로 signature를 생성해줄 수 있는 도구라고 생각할 수 있습니다.

지금은 parameter가 2개 있기때문에, parameter가 하나있는 b는 에러가 출력되고있습니다.

처음 보여줬던 예시처럼 하는게 조금 무섭게 생겼다면, 이렇게도 사용할 수 있습니다!

이건 자동완성의 타입스크립트 표준 라이브러리인데, 보면 Array옆에 <T>라고 있습니다.

이것도 Generic을 사용하는 경우라, 활용해서 배열안에 어떤 값이든 넣어줄 수 있습니다.

이것도 Generic을 활용하는 또 하나의 방법입니다.

Comments