Json 使用angular 2组合具有多个关键点的两个对象

Json 使用angular 2组合具有多个关键点的两个对象,json,angular,rxjs,associative-array,Json,Angular,Rxjs,Associative Array,我有两个对象,第二个应该是合并或与第一个数组合并,从而生成一个新数组 this.firstArray = [{ "field": "A", "value": ["1","2"] },{ "field": "B", "value": ["1","2","3"] }] this.secondArray = [{ "type": "A", "option": 1, "count": 2 }, { "type": "A

我有两个对象,第二个应该是合并或与第一个数组合并,从而生成一个新数组

this.firstArray = [{
   "field": "A",
   "value": ["1","2"]
   },{
   "field": "B",
   "value": ["1","2","3"]
   }]    

this.secondArray = [{
    "type": "A",
    "option": 1,
    "count": 2
  },
  {
    "type": "A",
    "option": 2,
    "count": 1
  },
  {
    "type": "B",
    "option": 1,
    "count": 1
  },
  {
    "type": "B",
    "option": 3,
    "count": 1
  }]
所需输出: 条件:

  • 字段和类型应相同

  • 值和选项也应该相同

  • 报数
  • 如果在第二个数组中未找到,则返回0

    [{
       "field": "A",
       "value": ["1": 2,"2": 1]
       },{
       "field": "B",
       "value": ["1": 1,"2": 0,"3": 1]
       }]
    
我所做的只是将json附加到具有相同字段和类型的字段中

this._finalArr = this.firstArray.map(val => {
          return Object.assign({}, val, this.secondArray.filter(v => v.field === val.type)[0]);
            });
            console.log(this._finalArr);

请把它添加到答案中,这样我就可以投赞成票了。。同样使用这种方法,我如何使用“let v of q.value”访问计数或值?我尝试了{{q.data[I].value},但没有一个有效