4
私は不可能を達成しようとしているかもしれないが、ここに行く。渡された関数からの戻り値の型戻り型
Iは
例えば機能Aのパラメータに渡される新しい機能と同じ型を返す関数(機能A)を定義します
export function test<T> (arg:Function):T {
return arg;
}
function a():string {
return 'a';
}
function b():number {
return 0;
}
let aVal:string = test(a);
let bVal:number = test(b);
明らかに、私はいくつかのコンパイル時エラーに対して自分の応答を強く入力することができます。
私はただ夢を見ている人はいないと思っています。
**注:この程度のコードはデモのために一緒に平手打ち**
乾杯
これはすばらしいことですが、関数自体を定義することなく、そのような関数シグネチャを定義できることはわかりませんでした。ありがとう –
うん..私たちが定義したのは、パラメータを取らず何かを返す関数であることが期待される関数パラメータです。それで全部です。 :) – toskv
まさに私が必要なもの –