I want to calculate sum with forEach array function in JavaScript. But I don't get what I want.
function sum(...args) {
args.forEach(arg => {
var total = 0;
total += arg;
console.log(total);
});
}
sum(1, 3);
How to get total with forEach, or use reduce method?
You may better use Array#reduce, because it is made for that kind of purpose.
It takes a start value, of if not given, it take the first two elements of the array and reduces the array literally to a single value. If the array is empty and no start value is supplied, it throws an error.
function sum(...args) {
return args.reduce((total, arg) => total + arg, 0);
}
console.log(sum(1, 3));
console.log(sum(1));
console.log(sum());
You should put total outside forEach loop:
function sum(...args) {
var total = 0;
args.forEach(arg => {
total += arg;
});
console.log(total);
}
sum(1, 3);
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With