2016-09-09 8 views
0

内のオブジェクトをマージ結果は:は、私は2つの配列を有するアレイ

[{Name: "Jack", Depot: "5", Depot Name: "Edgware"}, {Name: "Jill", Depot: "6", Depot Name: "Romford"}] 

これで任意の助けもいただければ幸いです

ここでは
+1

まずキーニーズに動作しない可能性があります ' 'デポName''あなたは私たちを –

+0

を表示することができますどのようなあなたがしようとした? – user7

+0

@BeeNagこれは無料サイトの取得コードではありません。まずは自分で試してみてください。 – Feathercrown

答えて

6

var array1 = [{ 
 
    Name: "Jack", 
 
    Depot: "5" 
 
}, { 
 
    Name: "Jill", 
 
    Depot: "6" 
 
}]; 
 
var array2 = [{ 
 
    'Depot Name': "Edgware" 
 
}, { 
 
    'Depot Name': "Romford" 
 
}]; 
 

 
for (var a in array1) { 
 
    for (var p in array1[a]) { 
 
    //to esclude all possible internal properties 
 
    if (array1[a].hasOwnProperty(p)) { 
 
\t array2[a][p] = array1[a][p]; 
 
    } 
 
    } 
 
} 
 

 
console.log(array2);

+0

.hasOwnPropertyを追加する()あなたのソリューションにチェックし、それは良いです。 – Danmoreng

+0

なぜですか?私を説明してください。 – Laurianti

+0

http://stackoverflow.com/questions/12735778/for-in-and-hasownproperty – Danmoreng

1

Object.assign()とソリューションです。

PS:ブラウザの互換性のためチェックは、このソリューションがあることをIEで

var arr1 = [{ 
 
    "Name": "Jack", 
 
    "Depot": "5" 
 
}, { 
 
    "Name": "Jill", 
 
    "Depot": "6" 
 
}]; 
 

 
var arr2 = [{ 
 
    "Depot Name": "Edgware" 
 
}, { 
 
    "Depot Name": "Romford" 
 
}]; 
 

 
var arr1Copy = arr1; 
 
var newArr = arr1Copy.map(function(v, i) { 
 
    return Object.assign(v, arr2[i]); 
 
}); 
 

 
console.log(newArr);

+0

これは 'arr1'を更新します。 – Tushar

+0

それを指摘してくれてありがとう。私は完全に忘れてしまった! – Pugazh

関連する問題