Heim  >  Artikel  >  Backend-Entwicklung  >  javascript数组合并

javascript数组合并

WBOY
WBOYOriginal
2016-06-06 20:31:52990Durchsuche

<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>
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn