TypeScript下面两种定义函数的方式有什么区别?

// 方式1
let myAdd1: (baseValue: number, increment: number) => number = function (
  x: number,
  y: number,
): number {
  return x + y;
};

// 方式2
function myAdd2(x: number, y: number) {
  return x + y;
}

我是前端新手,最近在看ts的语法。

想问下这两种定义函数的方式有什么区别?感觉方式1纯粹就是麻烦啊!什么时候需要用到方式1那种写法?

阅读 679
1 个回答
✓ 已被采纳

方式1:声名一个匿名函数,并赋值给 myAdd1 变量。
方式2:声名一个具名函数,函数名为 myAdd2

对于 TypeScript 来说,方式一可以将函数类型声名抽离出来:

type AddFunction = (baseValue: number, increment: number) => number;
let myAdd1: AddFunction = function (x, y) {
    return x + y;
};
推荐问题
logo
Microsoft
子站问答
访问
宣传栏