摘要:1.函数声明: TypeScript 中的函数可以通过函数声明或函数表达式进行定义: function add(x: number, y: number): number { return x + y; } 2.函数表达式: 函数表
1.函数声明: TypeScript 中的函数可以通过函数声明或函数表达式进行定义:
function add(x: number, y: number): number {
return x + y;
}
2.函数表达式: 函数表达式允许你将函数赋值给变量,或将其作为参数传递给其他函数:
const multiply = function(x: number, y: number): number {
return x * y;
};
3.箭头函数: TypeScript 还支持箭头函数的语法,它提供了更简洁的函数定义方式:
const subtract = (x: number, y: number): number => {
return x - y;
};
4.可选参数和默认参数: TypeScript 支持函数参数的可选和默认值。可选参数通过在参数名后面加上 ? 来定义,而默认参数则可以在参数后面直接赋值:
function greet(name: string, message: string = 'Hello') {
console.log(`${message}, ${name}!`);
}
greet('Alice'); // 输出:Hello, Alice!
greet('Bob', 'Hi'); // 输出:Hi, Bob!
5.剩余参数: TypeScript 中的剩余参数允许你将一个不确定数量的参数表示为一个数组。在参数前加上 ... 即可将其标记为剩余参数:
function sum(...numbers: number[]): number {
return numbers.reduce((total, num) => total + num, 0);
}
console.log(sum(1, 2, 3, 4)); // 输出:10
6.函数重载: TypeScript 支持函数重载,即可以为同一个函数提供多个函数类型定义。这样可以根据传入参数的不同,选择合适的函数类型进行调用:
function reverse(x: string): string;
function reverse(x: number): number;
function reverse(x: string | number): string | number {
if (typeof x === 'string') {
return x.split('').reverse().join('');
} else {
return parseFloat(x.toString().split('').reverse().join(''));
}
}
console.log(reverse('hello')); // 输出:olleh
console.log(reverse(12345)); // 输出:54321