函数类型注释打字稿

彼得

我想知道当形式参数名称不必匹配时,注释函数的含义是什么:

let foo: (x:number, y:number) => number = (a:number, b:number) => a+b    

我的意思是什么意思(x:number, y:number) => number我认为如果可以(number, number) => number在定义函数类型时编写代码会更有意义,尤其是如果“形式参数名称”不必一定匹配时。

我必须在函数类型中定义类似x和的名称的原因是什么y打字稿不能推断功能类型(a:number, b:number) => number吗?而且我知道我可以省略显式类型注释,但是就我而言,我一直想要显式类型注释。

库泰尔

考虑一下Array.prototype.map()的声明

public map(mapper: (value?: T, index?: number, list?: T[]) => any): any[];

您需要变量名,因为它们具有关于方法期望的参数的重要信息,仅类型还不够。如您所说,您可以避免使用类型,但是通过这种方式,您将使用代码为类型提供尽可能多的有关方法的信息。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章