【问题标题】:Adding Specific Array Values添加特定的数组值
【发布时间】:2016-02-22 18:02:04
【问题描述】:

好的,所以我有一个数组。

var array = ['159','350','317','350','138','163','317','367','352','317'];

我想遍历数组并在每次循环运行时只取特定值并将它们放入另一个数组中。例如。取数组中的每第三个项目,所以....

var a = 3;
var colArray = [];

for (var i = 0; i < a; i++) {
  colArray[i] = [];
  for (var k = i; k < array.length; k += a) {
     colArray[i].push(array[k]);
  };    
}; 

console.log(colArray);

....会在第一次迭代时在控制台中给出这个.....

159, 350, 317, 317

一切正常,但我想做的是将colArray 的每个数组中的值相加。我不希望每个数组的总和,但希望将第一个值添加到 0,将第二个值添加到 0 + 1,依此类推,给出这样的结果....

159, 509, 826, 1143 

jsFiddle

【问题讨论】:

  • 为什么push到array的时候不能保持一个running total?

标签: jquery arrays for-loop add


【解决方案1】:

我认为这就是您想要的,可能有更好的方法来做到这一点,但这对我有用。

  var array = ['159','350','317','350','138','163','317','367','352','317','159','138'];

var a = 3;
    var colArray = [];
    for (var i = 0; i < a; i++) {
      colArray[i] = [];

      for (var k = i; k < array.length; k += a) {
        if(k<a){
         colArray[i].push(Number(array[k]));
        }else{
         colArray[i].push(Number(array[k]) + Number(colArray[i][(k-a-i)/a]));
        }
      };    
    }; 

    console.log(colArray);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-02-06
    • 2019-11-21
    • 1970-01-01
    • 1970-01-01
    • 2018-08-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多