在JavaScript中的函数是一等公民
这里的意思是函数与其它类型都一样,可以作为参数进行传递,可以作为返回值被返回,可以赋值给变量
函数由两部分构成
代码
function add(x: number, y: number, z?: number): number {// z是可选参数 if (typeof z === 'number') { return x + y + z } return x + y }// 定义 let result = add(1 + 2)//调用 const add = (x: number, y: number, z?: number): number => { if (typeof z === 'number') { return x + y + z } return x + y }// 这是一种被称为函数的表达式写法 let add2: (x: number, y: number, z?: number) => number = add// 定义一个新变量
用接口描述函数类型
interface ISum { (x: number, y: number, z?: number): number } let add3: ISum = add
返回类型前面是用分号,还是箭头符,是一个问题,有点分不太清楚