中級 › ジェネリクスの型引数を明示すると戻り値の型チェックが効く › パターン4
ジェネリクスの型引数を明示すると戻り値の型チェックが効く
function firstOf<T>(items: T[]): Tのようなジェネリック関数は、呼び出し時に指定した型引数(例: firstOf<number>)に応じて戻り値の型が決まります。
1 function pickAt<T>(items: T[], idx: number): T { 2 return items[idx]; 3 } 4 const result: ______ = pickAt<number>([1, 2, 3], 0); ^ 5 console.log(result);
main.ts(4,7): error TS2322: Type 'number' is not assignable to type 'string'.
空欄を埋めてコンパイルを通す
pickAt<number>を指定した時点で戻り値の型はnumberに決まります。
次の問題