📅  最后修改于: 2023-12-03 14:48:05.663000             🧑  作者: Mango
在 TypeScript 中,函数是一个核心的概念。 函数可以像任何其他变量一样被声明并赋值,也可以像函数那样传递和调用。
使用 TypeScript 创建函数的语法和 JavaScript 类似。以下是一个简单的 TypeScript 函数:
function add(a: number, b: number) {
return a + b;
}
这个函数接收两个数字类型的参数,并返回它们的和。请注意,参数的类型必须在函数名称后面指定。
在 TypeScript 中,可以使用类型声明来指定函数的参数类型和返回类型:
function add(a: number, b: number): number {
return a + b;
}
这个函数与上面的函数相同,但是使用了类型声明来指定参数和返回值的类型。
在 TypeScript 中,可以将函数的参数声明为可选或默认。以下是一个可选参数的示例:
function add(a: number, b?: number) {
if (b) {
return a + b;
} else {
return a;
}
}
在这个函数中,参数 b
被声明为可选的。如果调用函数时没有提供 b
,则函数将返回 a
。
以下是一个默认参数的示例:
function add(a: number, b = 0) {
return a + b;
}
在这个函数中,参数 b
被声明为默认参数,它的初始值为 0
。如果调用函数时没有提供 b
,则函数将使用默认值 0
。
在 TypeScript 中,可以使用剩余参数来传递不定数量的参数。以下是一个剩余参数的示例:
function add(...numbers: number[]) {
return numbers.reduce((total, num) => total + num, 0);
}
在这个函数中, numbers
参数被声明为剩余参数。这意味着函数可以接收任意数量的数字参数,并将它们存储在一个数组中。在这个函数中,我们使用了 reduce
函数来将数组中的所有数字相加并返回它们的总和。
在 TypeScript 中,可以使用函数重载来声明同一个函数的不同版本。以下是一个函数重载示例:
function add(a: number, b: number): number;
function add(a: string, b: string): string;
function add(a: any, b: any): any {
return a + b;
}
在这个示例中,声明了两个不同的函数重载,一个接受两个数字参数并返回数字,另一个接受两个字符串参数并返回字符串。在最后的函数声明中,我们将函数定义为一个通用函数,它可以接受任何类型的参数,并返回它们的和或连接字符串。
在 TypeScript 中,函数是一个重要的概念。使用类型声明、可选参数、默认参数、剩余参数和函数重载等功能可以使函数更加强大和灵活。