
初期値付きのsum関数
JavaScriptで複数の引数を受け取り、合計して返すsum関数のようなものがよく使用される。
通常は初期値0から合計値を算出するが、初期値に-10や+10を設定して計算したい場合もある。
reduceで初期値設定
reduceなら初期値を設定できるため、前述の条件を下記のようにに満たせる。
const sum = (init, ...args) => {
return args.reduce((x, y) => x + y, init);
};
console.log(sum(10, 1, 2, 3));
// => 16
このように書けば文字列の連結にも応用可能だ。
const addstr = (init, ...args) => {
return args.reduce((x, y) => x + y, init);
};
console.log(addstr('add:', 'foo', 'bar', 'baz',));
// => 'add:foobarbaz'



