【发布时间】:2016-06-24 07:55:38
【问题描述】:
如果我为这样的函数定义一个接口
interface IMyFn {
(a: number, b: number) : number
}
我知道我可以创建一个实现该函数的变量/常量,并且 a 和 b 将具有正确的类型。
const fn1: IMyFn = (a, b) => {
return a + b;
}
但是我怎样才能声明一个函数必须实现接口呢?
// declare fn2: IMyFn???
function fn2 (a, b) {
return a + b;
}
在这种情况下,不输入 a 和 b。
我知道我可以做到:
function fn2 (a:number, b:number) : number {
return a + b;
}
如果我传递 fn2,类型将匹配。但是键入函数的想法是不必重复界面信息。
【问题讨论】: