Anders给出了这个接口重载的例子,但我不明白它是如何实现和使用的:
interface Fooable
{
Foo(n:number) : string;
Foo(s:string) : string;
}
有人能给我一个实现和使用它的例子吗?
答案 0 :(得分:3)
class Bar implements Fooable {
Foo(n: number): string;
Foo(n: string): string;
Foo(n: any) {
if(typeof n === 'number') {
return n + ' is a number';
} else if(typeof n === 'string') {
return n + ' is a string';
} else {
throw new Error("Oops, null/undefined?");
}
}
}