関数でGenericsを使う方法について
基本
関数の場合、関数名のあとに<型名>を付けて定義します。 以下の例では、<T>となっている箇所で、型がTとなっています。
function getObject<T>(value: T): { object: T } { return { data: value }; }
例 1個目は、Genericsの型を明示しています。2個目は省略(引数から推論できるので省略可能)しています。
function getObject<T>(value: T) { return { object: value }; } const s = getObject<string>('abc'); console.log(s); const n = getObject(123); console.log(n);
実行結果は以下のようになります。
{ object: 'abc' } { object: 123 }