配列の合計を計算する方について調べました。for文、for of文、reduceを使う方法を紹介します。
for文を使う方法
const numbers = [1,2,3,4,5];
let sum = 0;
for (let i = 0; i < numbers.length; i++) {
sum = sum + i;
}
console.log(sum); //15
関数にした場合
const sumNumbers = numbers => {
let sum = 0;
for (let i = 0; i < numbers.length; i++) {
sum += numbers[i];
}
return sum;
};
sumNumbers([1,2,3,4,5]); //15
for of文を使う方法
const numbers = [1,2,3,4,5];
let sum = 0;
for (const number of numbers) {
sum += number;
}
console.log(sum); //15
関数にした場合
const sumNumbers = numbers => {
let sum = 0;
for (const number of numbers) {
sum += number;
}
return sum;
}
sumNumbers([1,2,3,4,5]); //15
reduceを使う方法
const numbers = [1,2,3,4,5];
const sum = numbers.reduce((previousValue,currentValue) => previousValue + currentValue, 0);
console.log(sum); //15
reduceの第一引数の一つ目のpreviousValue
には「初期値」または「直前の処理で返された値」が入ります。currentValue
には、現在の値が入ります。第二引数の0
は、previousValue
の初期値です。
関数にした場合
const sumNumbers = numbers => numbers.reduce((previousValue,currentValue) => previousValue + currentValue, 0);
sumNumbers([1,2,3,4,5]); //15
おわりに
以上、配列の合計を計算する方法を紹介しました。
reduceを使って、Codewarsの配列の合計を計算する問題にチャレンジしました。Codewarsは、いろいろな言語でプログラミングの問題に、レベル別にチャレンジができるサービスです。とても勉強になります。興味がある方は、ぜひ使ってみてください!
https://www.codewars.com/kata/53dc54212259ed3d4f00071c/javascript