Javascript如何计算数组内的值?

时间:2017-03-28 01:53:19

标签: javascript jquery

我有这个数组:

arr = ["003448", "003609", "003729", "003800", "004178", "004362", "004410"];

我想转换它变成这样:

new_arr =  [161, 120, 71, 378, 184, 48];

161结果来自003609 - 003448

120结果来自003729 - 003609

依旧......

规则是“下一个值将减少之前的值”。我对此毫无头绪。有人请帮助我......我将非常感激。

3 个答案:

答案 0 :(得分:1)

您的问题似乎在尖叫Array.reduce

var arr = ["003448", "003609", "003729", "003800", "004178", "004362", "004410"];
var new_array = arr.reduce(function(a, currentValue, currentIndex, array) {
  var previousValue = array[currentIndex - 1];
  if (previousValue !== undefined)
    a.push(parseInt(currentValue, 10) - parseInt(previousValue, 10));
  return a;
 }, []);

 console.log(new_array);

答案 1 :(得分:0)

尝试以下解决方案:



var arr = ["003448", "003609", "003729", "003800", "004178", "004362", "004410"];
var new_arr =  [];

for (var i=1; i<arr.length; i++){
  new_arr.push(arr[i]-arr[i-1]);
}

console.log(new_arr);
&#13;
&#13;
&#13;

答案 2 :(得分:0)

433782.382;