我为此寻找答案但没有找到答案:
有没有办法强制至少有一个参数用于rest参数?
在下面的代码中,对logArray
的所有三次调用都是有效的,但我希望第一次调用失败。
function logArray(...elements: number[]) {
elements.forEach(x => console.log(x));
}
logArray(); // should fail but works
logArray(1);
logArray(1,2);
答案 0 :(得分:4)
一种可能的解决方案可能是在rest参数前添加一个常规参数,然后将其连接回函数体中,如此
function logArray(e1: number ,...erest: number[]) {
[e1, ...erest].forEach(x => console.log(x));
}