功能的书写类型冗余

问题描述

TypeScript中最简单的函数类型之一如下:

let myAdd: (x: number,y: number) => number = function (
  x: number,y: number
): number {
  return x + y;
};

冗余的目的是什么?我不明白。

解决方法

那实际上不是最简单的类型,我什至认为这有点过于复杂。通常,如果我创建这样的函数,我会这样写:

function myAdd(x: number,y: number) {
  return x + y;
}

此处推断返回类型。 如果您特别想使用函数表达式而不是函数声明,则相同:

const myAdd = function(x: number,y: number) {
  return x + y;
}

在这里,还将推断出返回类型和myAdd变量类型。您几乎不需要注释每件事。实际上,通常我唯一需要注释的就是函数参数,除非我编写必须明确键入所有内容的抽象类或接口。 TypeScript非常擅长类型推断,因此可以无害地忽略大多数类型。

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...