Ts 函数定义类型

444 阅读1分钟

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)