TypeScript 函数类型
函数参数类型、返回值类型、可选参数、剩余参数、函数重载 · 难度:进阶 · +15XP
TypeScript 中的函数
TS 让你可以给函数每个参数和返回值都标注类型。
参数和返回值类型
function multiply(a: number, b: number): number {
return a * b;
}
// 可选参数(用 ?)
function greet(name: string, title?: string): string {
return title ? ${title} ${name} : name;
}
// 默认参数
function createUser(name: string, age: number = 18): string {
return ${name}, ${age}岁;
}
// 剩余参数
function sum(...nums: number[]): number {
return nums.reduce((a, b) => a + b, 0);
}
函数类型表达式
// 定义函数类型别名
type MathFunc = (a: number, b: number) => number;
const add: MathFunc = (a, b) => a + b;
const sub: MathFunc = (a, b) => a - b;
// 回调函数类型
function fetchData(callback: (data: string) => void) {
callback("loaded");
}