型引数 T (Type Arguement)




ジェネリクス型 (generics)

=> 汎用的な型

汎用的なクラス・汎用的なメソッドに対して 特定の型を紐づけるための仕組み。




以下を共通化できないか?

const echo = (arg: number): number => {
  return arg;
}

const echo = (arg: string): string => {
  return arg;
}




ジェネリクス型を用いてリファクタリング

const echo = <T>(arg: T): T => {
  return arg;
}
console.log(echo<number>(100))

=> return は100

console.log(echo<stringr>(Hello))

=> return は "Hello"