javascript数组合并

WBOY
リリース: 2016-06-06 20:31:52
オリジナル
1030 人が閲覧しました

<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>
ログイン後にコピー
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート