2016-08-03 90 views
1

我搜索了一個答案,但沒有找到答案:
有沒有辦法強制至少一個參數爲休息參數?
在下面的代碼中,所有對logArray的三個調用都是有效的,但我希望第一個調用失敗。強制至少有一個參數爲休息參數

function logArray(...elements: number[]) { 
    elements.forEach(x => console.log(x)); 
} 

logArray(); // should fail but works 
logArray(1); 
logArray(1,2); 

回答

3

一個可能的解決辦法是隻需添加在其他參數前常規參數和連接回函數體中,像這樣

function logArray(e1: number ,...erest: number[]) { 
    [e1, ...erest].forEach(x => console.log(x));   
} 
相關問題