将2个json文件映射成单个json

时间:2017-10-06 07:51:54

标签: javascript arrays json angular

我有2个名为Raw.json和ParamName.json的json文件我想将这2个json文件映射成一个。 的 Raw.json



[
 {
  "p1": "989671267",
  "p2": "302",
  "p3": "Answered"
 }
]




ParamName.json



[
 {
  "p1": "CLI",
  "p2": "DID",
  "p3": "Status
 }
]




我希望看起来像 [  {    " CLI":" 989671267",    " DID":" 302",    "状态":"已回答"  } ]

我必须在我的angular2智能表中使用它。请任何人帮助。?

1 个答案:

答案 0 :(得分:2)

您可以将map方法与reduce方法结合使用。



let array1=[
 {
  "p1": "989671267",
  "p2": "302",
  "p3": "Answered"
 },
 {
  "p4": "9896712671",
  "p5": "3021",
  "p6": "Answered1"
 }
]
let array2=[
 {
  "p1": "CLI",
  "p2": "DID",
  "p3": "Status"
 },
 {
  "p4": "CLI1",
  "p5": "DID1",
  "p6": "Status1"
 }
];
array2=array2.map(function(item,i){
  let itemKeys=Object.keys(item);
  let obj=itemKeys.reduce(function(obj,key){
    obj[item[key]]=array1[i][key];
    return obj;
  },{});
  return obj;
});
console.log(array2);