Javascript には reduce という配列関数があります。
各要素を評価して、ひとつの結果を出すことができます。
ただ、コールバック関数の引数がややこしくて使いこなせていない感じがするので、どのようにしたら使いやすく伝わるかを考えてみました。
reduce 関数の例(引数全部入り)
各要素を評価して、ひとつの結果を出すことができます。
ただ、コールバック関数の引数がややこしくて使いこなせていない感じがするので、どのようにしたら使いやすく伝わるかを考えてみました。
reduce 関数の例(引数全部入り)
[1, 2, 3, 4, 5].reduce(function (_accumulator, _currentValue, _index, _array) {
return _accumulartor + _currentValue;
}, 0);
ここでは各要素の足し算を行います。
引数名は MDN どおりなのですが、以下のようにしてみました。
reduce 関数の第二引数である「0」は初期値をあらわします。省略すると最初の要素がそのまま使われますが、複雑になるので後で見る人のために使わないほうがいいでしょう。
引数名は MDN どおりなのですが、以下のようにしてみました。
[1, 2, 3, 4, 5].reduce(function (_result, _value, _index, _array) {
return _result + _value;
}, 0);
_index と _array は前後の要素で比較するなどがあれば使うと思いますが、実践ではほとんど使われず、省略しています。