TypeScript의 제네릭 타입 인터페이스

이제 함수 호출을 위한 제네릭 타입 인터페이스를 설명해 보겠습니다. 여기에 함수 호출 시그니처를 정의하겠습니다:

typescriptinterface IFunc {
  <T> (data: T): T;
}

다음으로 함수 myFunc를 선언하고 그 본문에 코드를 작성하겠습니다:

typescriptfunction myFunc <T> (data: T): T {
  return data;
}

let func: IFunc = myFunc;

그런 다음 IFunc를 참조하는 타입의 변수 func를 작성합니다. 그리고 이 변수는 함수 myFunc를 호출합니다:

typescriptlet func: IFunc = myFunc;

전체 코드는 다음과 같이 보일 것입니다:

typescriptinterface IFunc {
  <T> (data: T): T;
}

function myFunc <T> (data: T): T {
  return data;
}

let func: IFunc = myFunc;

console.log(func('abcde'));

코드를 실행한 후 우리는 다음을 보게 됩니다:

typescript'abcde'