📜  typescript 参数函数类型 - TypeScript (1)

📅  最后修改于: 2023-12-03 15:35:24.371000             🧑  作者: Mango

TypeScript函数类型与参数类型

在使用TypeScript的过程中,我们经常需要定义函数的参数类型和返回值类型。这些类型定义可以使我们的代码更加可读和可靠。

定义函数类型

要定义一个函数类型,我们可以使用函数表达式的形式。例如,下面是一个简单的函数类型:

type MyFunctionType = (a: number, b: number) => number;

上面的代码定义了MyFunctionType函数类型,它接受两个参数a和b,并返回一个数值类型。

我们也可以使用接口定义函数类型。例如,下面是相同函数类型的接口定义:

interface MyFunctionInterface {
  (a: number, b: number): number;
}
定义参数类型

在定义函数类型时,我们也常常需要定义函数参数的类型。例如,下面是一个带有参数类型的函数类型:

type MyFunctionType = (a: number, b: string[]) => number;

上面的函数类型使用了number和string[]类型的参数。

如果我们需要定义多个参数的类型,可以使用逗号分隔。例如,下面是一个带有三个参数类型的函数类型:

type MyFunctionType = (a: number, b: string[], c: boolean) => number;
可选参数与默认值

在定义函数类型时,我们也可以使用可选参数和默认值。例如,下面是一个带有可选参数和默认值的函数类型:

type MyFunctionType = (a: number, b?: string, c: boolean = true) => number;

上面的函数类型中,第二个参数b是可选的,并且第三个参数c具有默认值true。

剩余参数

在定义函数类型时,我们也可以使用剩余参数。例如,下面是一个带有剩余参数的函数类型:

type MyFunctionType = (a: number, ...args: string[]) => number;

上面的函数类型中,args是一个字符串数组,它接受任意数量的字符串参数。

总结

在TypeScript中,我们可以使用函数类型和参数类型来定义函数的类型。这样可以使我们的代码更加可读和可靠。除了基本的参数类型外,我们还可以使用可选参数、默认值和剩余参数。