ビデオでは、インターフェイスが奇妙なオーバーロード手法を使用できることがわかりました。以下のコードはコンパイルされていますが、機能しません。いくつか質問がありますが、それらはすべてコード内に配置されています。
interface X{
// how can the class implements such overload ?
f:{
(s:string):string;
(s:number):string;
data:any;
};
}
class xxx
{
// how to initialize this structure ?
f:{
(s:string):string;
(s:number):string;
data:any;
};
}
var x = new xxx();
// how should the class xxxx look to be used with this function ?
function a(x:X):string{
return x.f("1");
}
a(x);