今天要來講講TypeScript(TS)函式(Function)的剩餘參數(Rest Parameter),
那麼剩餘參數是什麼呢?
剩餘參數(Rest Parameter)可以將多個參數視為一個群組傳遞,
通常應用在不確定函式的參數個數之情況下。
在呼叫剩餘參數函式時,
可以傳入0至多個指定型別的引數(argument)。
一個函式只能定義一個剩餘參數,
他必須出現在所有必要參數之後,
也就是參數列的最後一個。
剩餘參數的型別必須是一個陣列型別。
另外,在使用剩餘參數時的三個重點。
接著我們來看看範例吧,
function sum(...nums: number[]): string {
let total = 0;
for (let i = 0; i < nums.length; i++) {
total += nums[i];
}
return `Total = ${total}`;
}
範例中,sum函式
包含了剩餘參數nums
,
用法如上面所說,
在剩餘參數前加上...剩餘運算子
,
而剩餘函式的型別為一個number的陣列
最後進到函式內做邏輯判斷與處理,
這邊的範例式將傳進的所有數值都相加,
最後回傳加總結果。
那我們來看看呼叫的方法吧。
let r0 = sum();//0
let r1 = sum(1, 2);//3
let r2 = sum(1, 2, 3, 4);//10
console.log(r0, r1, r2);
因為剩餘函數可以傳入不同個數的參數,
範例中可看得出來傳入不同參數個數,
皆能透過函式計算出所有的加總喔。
今天講的剩餘參數,
在不確定函式的參數個數的情況下是很適合拿來應用的方法喔,
希望大家都懂了,
那麼繼續加油吧。