Home  >  Article  >  Backend Development  >  javascript数组合并

javascript数组合并

WBOY
WBOYOriginal
2016-06-06 20:31:52993browse

<code>php</code><code>  var arr = [[8,2],[9,1],[10,0]];
  var arr2 = [[8,5],[9,1],[10,4]];
  var arr3 = [[8,8],[9,8],[10,1]];

</code>

3个数组结构一样,而且里面的一维数组第一个值相同,怎么把3个数组按照一维数组第一个值合并成
arr4 = [[8,15],[9,10],[10,5]]//15=2+5+8
ps:用php的数组也可以

回复内容:

<code>php</code><code>  var arr = [[8,2],[9,1],[10,0]];
  var arr2 = [[8,5],[9,1],[10,4]];
  var arr3 = [[8,8],[9,8],[10,1]];

</code>

3个数组结构一样,而且里面的一维数组第一个值相同,怎么把3个数组按照一维数组第一个值合并成
arr4 = [[8,15],[9,10],[10,5]]//15=2+5+8
ps:用php的数组也可以

<code>js</code><code>var arr = [[8,2],[9,1],[10,0]];
var arr2 = [[8,5],[9,1],[10,4]];
var arr3 = [[8,8],[9,8],[10,1]];

var result = [[[], [], []], arr, arr2, arr3].reduce(function(r, t) {
    r.forEach(function(rt, i) {
        rt[0] = rt[0] || t[i][0]
        rt[1] = (rt[1] || 0) + t[i][1]
    });

    return r;
});

console.log(result.map(function(token) {
    return token.toString();
}));
</code>

<code>var arr = [[8,2],[9,1],[10,0]];
var arr2 = [[8,5],[9,1],[10,4]];
var arr3 = [[8,8],[9,8],[10,1]];
var ret = [];
arr.forEach(function(item, i){
    var r = [];
    r[0] = item[0];
    r[1] = arr[i][1] + arr2[i][1] + arr3[i][1];
    ret.push(r);
});
console.log(ret);</code>
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn