Angular 将数组与JSON匹配

Angular 将数组与JSON匹配,angular,typescript,ionic-framework,Angular,Typescript,Ionic Framework,我有一个JSON数组causesoferror: [ { "code" : "001", "descr" : "Descr001", "wheretocheck" : "Where001", "measurestobetaken" : "Measure001" }, { "code" : "002", "descr" : "Descr002", "wheretocheck" : "Where002", "measurestobetaken" : "M

我有一个JSON数组causesoferror:

[
  { 
  "code" : "001",
  "descr" : "Descr001",
  "wheretocheck" : "Where001",
  "measurestobetaken" : "Measure001"
  },
  {
  "code" : "002",
  "descr" : "Descr002",
  "wheretocheck" : "Where002",
  "measurestobetaken" : "Measure002"
  },
  {
  "code" : "003",
  "descr" : "Descr003",
  "wheretocheck" : "Where003",
  "measurestobetaken" : "Measure003"
  },
  {
   ETC,ETC,ETC   
  },
  {
  "code" : "400",
  "descr" : "Descr400",
  "wheretocheck" : "Where400",
  "measurestobetaken" : "Measure400"
  }
]
和一个带有一些代码的数组GBRUMDatacoeSpilt:

我需要将第二个的值与第一个的数字匹配,然后创建一个新对象,类似于:

[
      { 
      "code" : "004",
      "descr" : "Descr004",
      "wheretocheck" : "Where004",
      "measurestobetaken" : "Measure004"
      },
      {
      "code" : "101",
      "descr" : "Descr101",
      "wheretocheck" : "Where101",
      "measurestobetaken" : "Measure101"
      },
      {
      "code" : "102",
      "descr" : "Descr102",
      "wheretocheck" : "Where102",
      "measurestobetaken" : "Measure102"
      },
      {
       ETC,ETC,ETC   
      }
    ]
我尝试了各种方法,但我总是收到这样的不好的东西:

这是我的代码:

for ( var counter : number = 0; counter < this.gbrumdatacoesplit.length; counter ++ )
 {
   this.coefilter = this.causesoferror.filter(coeelement => coeelement['code'] == this.gbrumdatacoesplit[counter]);
   this.coefiltered.push(this.coefilter);
 }
   console.log(this.coefiltered);

如果我理解正确,您希望按代码过滤数据。下面是示例代码

const data = [
  {
    "code": "004",
    "descr": "Descr004",
    "wheretocheck": "Where004",
    "measurestobetaken": "Measure004"
  },
  {
    "code": "101",
    "descr": "Descr101",
    "wheretocheck": "Where101",
    "measurestobetaken": "Measure101"
  },
  {
    "code": "102",
    "descr": "Descr102",
    "wheretocheck": "Where102",
    "measurestobetaken": "Measure102"
  }
];
const codes = ['004', '102'];
const filterData = data.filter(item => codes.includes(item.code));
console.log(filterData)
过滤数据将是

const filterData = [
  {
    "code": "004",
    "descr": "Descr004",
    "wheretocheck": "Where004",
    "measurestobetaken": "Measure004"
  },
  {
    "code": "102",
    "descr": "Descr102",
    "wheretocheck": "Where102",
    "measurestobetaken": "Measure102"
  }
];

flter返回一个数组,其中包含与谓词匹配的所有对象。如果该数组存在,则获取该数组的第一个元素(假设只有一个),或者使用find代替,并测试它是否返回了一个对象,这很有效,有时比预期的要容易:非常感谢