1. ホーム
  2. javascript

[解決済み] Javascript 空の配列の削減

2022-07-11 07:37:02

質問

配列を縮小する際に、0を取得しようとしているのですが、関数の挙動がよくわかりません。

[].reduce(function(previousValue, currentValue){
  return Number(previousValue) + Number(currentValue);
});

結果

TypeError: Reduce of empty array with no initial value

配列が空だと縮小できないようです。

[""].reduce(function(previousValue, currentValue){
  return Number(previousValue) + Number(currentValue);
});

結果

""

配列の唯一の要素が空文字列の場合、空文字列を取得する

どのように解決するのですか?

2番目のパラメータ は初期値用です。

[].reduce(function(previousValue, currentValue){
  return Number(previousValue) + Number(currentValue);
}, 0);

を使うか、ES6を使うかです。

[].reduce( (previousValue, currentValue) => previousValue + currentValue, 0);