函数

相比于javascript,ts增加了对函数参数、返回值的类型校验

function 函数名称 (形参1: 类型, 形参2: 类型) 返回类型 {
  函数体
  retrun 返回值
}

函数的声明

函数的命名

与js一致

函数重载:不支持

因为js不支持,故不支持,下面的代码会报错:

function test(a: string, b: string): string {
    return "hello"
}

function test(a: string): string {
    return "hello"
}

无参函数

有参函数

可选参数函数

无返回值函数

无返回值函数:自动推断

有返回值函数

有返回值函数:返回类型推断

有返回值函数:返回类型可能多种

或者使用返回类型推断:

永远不返回函数

never代表函数永远不会有返回,比较常见的情况有:

  • 函数内部有while(true) {},函数永远不会走完,比如http服务器

  • 函数不会走完,总是抛出异常,function foo() { throw new Error('Not Implemented') }

这些函数可以定义为never

最后更新于

这有帮助吗?