有些時候JS中函數傳遞的參數並不確定,需要通過arguments對象來實現不定參數的定義。
補充代碼,令函數滿足多個不定參數的加法與減法運算結果。
例如:sum(2,3,4,'+') 實現返回2+3+4的結果;sum(10,2,1,3,'-') 實現10-2-1-3的結果。
參考代碼:
1 function sum() { 2 var len = arguments.length; 3 var result = null; 4 if (arguments[len - 1] === '+') { 5 for (let i = 0; i < len - 1; i++) { 6 result += arguments[i]; 7 } 8 } else if (arguments[len - 1] === '-') { 9 for (let i = 1; i < len - 1; i++) { 10 result += arguments[i]; 11 } 12 result = arguments[0] - result; 13 } else { 14 alert('符號參數錯誤'); 15 } 16 17 return result; 18 } 19 20 console.log(sum(10, 3, 3,1,1 ,'-'))