TypeScript 2.2では、定義されたインターフェイスコールシグネチャによる「オーバーロード」機能が使用されていました。複数のコールシグネチャを持つTypeScriptインターフェイス
それに取り組み、「クラッキング」した後、ここに投稿する価値があると思いました。私が始めた
問題は、たとえば、だった:
interface Func1 {
(num1: number, num2: number): number;
(str1: number, str2: string): string;
}
function F1(num1: number, num2: number): number {
return num1 + num2;
}
const f1: Func1 = F1;
console.log(f1(1, 2));
しかしFunc1
がF1
機能を受け入れることができないため、コンパイラはそれを通過しませんでした。
私は過負荷をかけたいと思っています。私は何をすべきかわかりません。
以下の回答を参照してください。
'typeof'は「シンプル」型でのみ意味があります。あなたがそうした場合、あなたは悪いAPIを書いています。あなたのクラスを 'instanceof'ではないものを使ってあなたのAPIを呼び出すことができますし、あなたはそれを防ぐことができません。 –