4

問題の次の例があります。TypeScript 0.9 では、オーバーロードされたメソッドの最終シグネチャを呼び出すことができるようです:

class Test {
    method(...names: string[]) : void;
    method(names: string[]) : void {

    }
}

var x= new Test();

x.method('One', 'Two', 'Three');
x.method(['One', 'Two', 'Three']);

TypeScript 0.8.x では、3 番目の署名を指定する必要があるため、次のようになります。

class Test {
    method(...names: string[]) : void;
    method(names: string[]) : void;
    method(names: any) : void {

    }
}

var x= new Test();

x.method('One', 'Two', 'Three');
x.method(['One', 'Two', 'Three']);

最終的な署名を隠す必要はありませんか? (型などで過度に一般化された署名が含まれている可能性が最も高いためany)。

4

1 に答える 1