残余引数の総和を求める
const sum = (...rp) => {
const reducer = (previousValue, currentValue) => {
console.log(`PREV: ${previousValue}`, `CUR: ${currentValue}`)
return previousValue + currentValue
}
console.log(rp.reduce(reducer))
}
sum(1, 2, 3)
const ar = [1,2,3]
// アロー関数を利用した場合
const sum = ar.reduce((previous, current) => previous + current)
// アロー関数を利用しない場合
const sum = ar.reduce(function(previous, current){
return previous + current
})
// コールバッグ関数を渡した場合
const callbackFunc = (previous, current) => previous + current
const sum = ar.reduce(callbackFunc)
console.log(sum) // 6
function sum(...args) {
let result = 0;
for (let value of args) {
result += value;
}
return result;
}
console.log(sum(1, 2, 3, 4));