Typescript Generic

SEOKWOO LEE·2022년 10월 26일
0

C#과 Java 같은 언어에서, 재사용 가능한 컴포넌트를 생성하는 도구상자의 주요 도구 중 하나는 제네릭입니다, 즉, 단일 타입이 아닌 다양한 타입에서 작동하는 컴포넌트를 작성할 수 있습니다. 사용자는 제네릭을 통해 여러 타입의 컴포넌트나 자신만의 타입을 사용할 수 있습니다. -Typescript

generic 사용 이유

  1. 함수를 만들고 제공하는 입장이라면 누구든지 마음대로 타입을 지정할 수 있게 제공할 수 있다는 장점이 있다. (라이브러리 개발)
  2. 사내 라이브러리 사용 시 1번의 이유로 장점을 가진다.
// generic 타입 - 1
function getGeneric1<MyType1, MyType2, MyType3>(arg1: MyType1, arg2: MyType2, arg3: MyType3): [MyType3, MyType2, MyType1] {
  return [arg3, arg2, arg1];
}
const result4 = getGeneric("철수", 123, true); // 타입 추론이 가능하다. (입력할떄마다 타입이 변한다!)
const result4 = getGeneric1<string, number, boolean>("철수", 123, true); // generic을 사용하면 타입을 지정하고 고정시킬 수 있다.
// generic 타입 - 2
function getGeneric2<T1, T2, T3>(arg1: T1, arg2: T2, arg3: T3): [T3, T2, T1] {
  // MyType은 임의로 부여할 수 있다.
  return [arg3, arg2, arg1];
}
const result5 = getGeneric2<string, number, boolean>("철수", 123, true);
// generic 타입 - 3
function getGeneric3<T, U, V>(arg1: T, arg2: U, arg3: V): [V, U, T] {
  // MyType은 임의로 부여할 수 있다.
  return [arg3, arg2, arg1];
}
const result6 = getGeneric3<string, number, boolean>("철수", 123, true);
// generic 타입 - 4
function getGeneric4<T, U, V>(arg1: T, arg2: U, arg3: V): [V, U, T] {
  // MyType은 임의로 부여할 수 있다.
  return [arg3, arg2, arg1];
}
const result7 = getGeneric4<string, number, boolean>("철수", 123, true);
profile
내가 보기위해 만든 나만의 공부 노트

0개의 댓글

관련 채용 정보