TypeScript - 剩余参数
在 TypeScript 中,有时候你可能不知道一个函数会接收多少个参数。这时候,剩余参数(Rest Parameter)就派上用场了。它允许你使用 一个参数变量 来接收多个参数。
剩余参数语法
剩余参数的语法是使用三个点(...
)后跟参数名。在函数声明中,你需要为剩余参数指定数组类型。
function funcName(...rest: type[]): returnType {
// 函数体
}
funcName
:函数的名称。...rest
:将多个参数收集到名为 rest 的数组中。type[]
:指定参数的类型。
一个函数可以同时包含普通参数和剩余参数,但剩余参数必须是参数列表中的最后一个参数。
function funcName(param1: type, ...rest: type[]) {} // 正确
function funcName(...rest: type[], param1: type) {} // 错误:剩余参数必须是最后一个参数
一个函数定义中只能有一个剩余参数。
function funcName(...rest1: type[], ...rest2: number[]) {} // 错误:只能有一个剩余参数
函数表 达式同样可以使用剩余参数。
let getSum = function(...rest: number[]) {
// 函数体
}