1. 函数定义类型的几种方式
1.1例子
- 命名函数
function add1(x:number,y:number):number {
return x+y
}
add1(1,2)
- 类型别名
type add2 = (x:number,y:number) => number
let a2:add2 = (x,y) => x+y
a2(1,2)
type LongHand = {
(a:number) : number
}
type ShortHand = (a:number) => number
//上面的代码中两个例子完全相同。但是你想使用函数重载时,只能使用第一种方式。
type LongHandAllowsOverloadDeclarations = {
(a:number) : number;
(a:string) : string
}
- 接口
interface add3 {
(x:number,y:number): number
}
let a3:add3 = (x,y) => x+y
a3(1,2)
- 箭头函数
let add4: (x:number,y:number) => number = (x,y) => x+y
add4(1,2)