函数
TypeScript 中的函数是一等公民,可以像变量一样被赋值,可以作为参数传递给其他函数,也可以作为函数的返回值。
函数声明
typescript
function greet(name: string): string {
return "Hello, " + name;
}函数表达式
typescript
const greet = function (name: string): string {
return "Hello, " + name;
}函数类型
typescript
function greet(name: string): string;
function greet(name: string, age: number): string;
function greet(name: string, age?: number): string {
if (age) {
return "Hello, " + name + " (" + age + ")";
} else {
return "Hello, " + name;
}
}可选参数和默认参数
typescript
function greet(name: string, age?: number = 25): string {
return "Hello, " + name + " (" + age + ")";
}剩余参数
typescript
function greet(name: string, ...args: string[]): string {
return "Hello, " + name + " " + args.join(" ");
}函数重载
typescript
function greet(name: string): string;
function greet(name: string, age: number): string;
function greet(name: string, age?: number): string {
if (age) {
return "Hello, " + name + " (" + age + ")";
} else {
return "Hello, " + name;
}
}箭头函数
typescript
const greet = (name: string) => `Hello, ${name}`;