ジェネリクスとは「抽象化されたデータ型」を表現する機能です。 同じ様な関数だが、型違いの場合に、引数である型を抽象的に使う時に便利な機能です。 ジェネリクスを使わない例では、 let getStringArray = (value: string): string[] => { return [value, value, value]; }; let getNumberArray = (value: number): number[] => { return [value, value, value]; }; 冗長ですよね。 関数の受け取る引数が違うだけなのに、複数の関数を定義している例です。 だめな解決策としては、型の部分をany型にするという解決策がありますが、それではTypeScriptで静的型付けをしている意味が全くありません。 そこで登場するのが、 ジェネリクス という機能です。
