- 假设这个时候我有一个需求: 要求定义一个函数可以实现
2 个数或者 3 个数的加法
- 这个时候就可以利用可选参数来进行实现
- 实现方式为,在需要进行可选的参数名称后面添加一个
? 即可实现
function add(x: number, y: number, z?: number): number {
return x + y + (z ? z : 0);
}
// let res = add(10, 20);
let res = add(10, 20, 30);
console.log(res);
- 可选参数可以配合
函数重载 一起使用,这样可以让函数重载变得更加强大
function add(x: number, y: number): number;
function add(x: number, y: number, z: number): number;
function add(x: number, y: number, z?: number) {
return x + y + (z ? z : 0);
}
let res = add(10, 20);
// let res = add(10, 20, 30);
console.log(res);
注意点
function add(x: number, y?: number, z: number): number {
return x + (y ? y : 0) + (z ? z : 0);
}
let res = add(10, 20, 30);
console.log(res);
function add(x: number, y?: number, z?: number): number {
return x + (y ? y : 0) + (z ? z : 0);
}
let res = add(10);
console.log(res);
默认参数
function add(x: number, y: number = 10): number {
return x + y;
}
// let res = add(10);
let res = add(10, 30);
console.log(res);
剩余参数
function add(x: number, ...args: number[]) {
console.log(x);
console.log(args);
}
add(10, 20, 30, 40, 50);
|
请发表评论