直接上代码:
函数定义方式一
let myAdd = function (x, y) { return x + y; }
函数定义方式二
let myAdd: (baseValue: number, increment: number) => number = function (x, y) { return x + y; }
两种方式完全等价,但为了深入学习,方式二展示出了myAdd函数 完整的“函数类型”的定义
“函数类型”包含两部分:参数类型和返回值类型
在方式二中,myAdd函数的函数类型即为:
(baseValue: number, increment: number) => number
=>左边表示了参数类型,=>右边表示了返回值类型(如何无返回值,则写void)
注意:不要混淆了 TypeScript 中的 =>
和 ES6 中的 =>
。
在 TypeScript 的类型定义中,=>
用来表示函数类型的定义,左边是输入类型,需要用括号括起来,右边是输出类型。
在 ES6 中,=>
叫做箭头函数,应用十分广泛,可以参考 ES6 中的箭头函数。
参考资料: