JavaScript | 配列にある値の合計値を取得する方法

2022-02-01JavaScript 数値・計算,JavaScript

JavaScript | 配列にある値の合計値を取得する方法

JavaScriptで配列にある値の合計値を取得するサンプルコードを紹介しています。

配列にある値の合計値を取得する

配列の値の合計値を計算する方法としてreduce()メゾッドを活用する方法があります。

reduce()メゾッドは配列のすべての要素に対して縮小関数を実行した結果を単一最終結果として返ります。

let array = [10, 20, 30, 40, 50];

let sum = array.reduce((a, b) => {
	return a + b;
});

console.log(sum);
// 150

上記サンプルコードの場合、処理中は変数「a」にはそれまでの合計値、変数「b」には現在のindexの値が代入されています。

r常に計算結果をreturnされていますが、reduce()メゾッドはすべての配列にある値の計算を行った結果を返します

reduce()に多次元配列を指定した場合

多次元配列が指定された場合、エラーにはなりませんが返り値は以下のようになり正常な計算結果を得られません。

let array = [10, 20, 30, 40, 50, [60, 70]];

let sum = array.reduce((a, b) => {
	return a + b;
});

console.log(sum);
// 15060,70

reduce()でオブジェクト(連想配列)を指定した場合

サンプルコードのまま、reduce()メゾッドの処理にオブジェクト型を指定した場合、エラーとなります。

let obj = { a: 10, b: 20, c: 30, d: 40, e: 50 };

let sum = obj.reduce((a, b) => {
	return a + b;
});

console.log(sum);
// test.js:6 Uncaught TypeError: array.reduce is not a function