首页 > 解决方案 > 找到运行十次的“计数器”变量循环的总和,然后被推入“数字”数组。我尝试的每一种方式都会产生一个列表

问题描述

我正在寻求帮助以找到一个数组的总和,该数组的元素是从之前循环了 10 次的计数器变量中推送的。我是 Javascript 新手,正在练习评估,我尝试了几种不同的方法来做这件事,结果只得到了 numbers 数组中的元素列表。

var counter = 10;
var numbers = [];

for (i = 1; i <= 10; i ++) {
  counter = [i + 73];
  numbers.push(counter);
}

console.log(numbers);

function sum(arr) {
  var s = 0;
  for(var i = 0; i < arr.length; i++) {
     s = s += arr[i];
  }
  return s;
}

console.log(sum([numbers]));

function getArraySum(a) {
  var total = 0;
  for (var i in a) {
    total += a[i];
  }
  return total;
}

var numbers = getArraySum([numbers]);
console.log(numbers);

标签: javascriptarrayssum

解决方案


您应该只推送不带括号的计数器的值,然后进行归约以得到数组中每个数字的总和

var counter = 10;
var numbers = [];

for (i = 1; i <= 10; i++) {
  counter = i + 73;
  numbers.push(counter);
}

console.log(numbers.reduce((a,b) => a+b));


推荐阅读