Arrays 强制rest参数至少有一个参数
我为此搜索了答案,但没有找到答案:Arrays 强制rest参数至少有一个参数,arrays,typescript,ecmascript-6,variadic-functions,Arrays,Typescript,Ecmascript 6,Variadic Functions,我为此搜索了答案,但没有找到答案: 是否有方法强制rest参数至少有一个参数? 在下面的代码中,对logArray的所有三个调用都是有效的,但我希望第一个调用失败 function logArray(...elements: number[]) { elements.forEach(x => console.log(x)); } logArray(); // should fail but works logArray(1); logArray(1,2); 一种可能的解决方案是
是否有方法强制rest参数至少有一个参数?
在下面的代码中,对
logArray
的所有三个调用都是有效的,但我希望第一个调用失败
function logArray(...elements: number[]) {
elements.forEach(x => console.log(x));
}
logArray(); // should fail but works
logArray(1);
logArray(1,2);
一种可能的解决方案是在rest参数前面添加一个常规参数,然后像这样将其连接回函数体
function logArray(e1: number ,...erest: number[]) {
[e1, ...erest].forEach(x => console.log(x));
}