如何在另一个数组中使用项目过滤一个打字稿数组



我有2个数组:

 [
  {
    "id": 1,
    "name": "All",
  },
  {
    "id": 2,
    "name": "APR",
  },
 {
    "id": 3,
    "name": "TER",
  }]

第二个数组是["APR", "TER"]

我想用第二个数组过滤第一个数组,该数组的输出应为

  [{
    "id": 2,
    "name": "APR",
  },{
    "id": 3,
    "name": "TER",
  }]

尝试使用过滤器函数 - 可能吗?

谢谢Anand

过滤器方法的标准使用。只要给它正确的检查条件,就可以了:

const myArray = [{
  "id": 1,
  "name": "All",
}, {
  "id": 2,
  "name": "APR",
}, {
  "id": 3,
  "name": "TER",
}];
const otherArray = [
  "APR",
  "TER",
];
const filtered = myArray.filter(x => otherArray.includes(x.name));
console.log(filtered)

您可以使用filter函数过滤数组:

const items =  [
  {
    "id": 1,
    "name": "All",
  },
  {
    "id": 2,
    "name": "APR",
  },
 {
    "id": 3,
    "name": "TER",
  }]
const filterValues = ["APR", "TER"]
const filtered = items.filter(item => filterValues.indexOf(item.name) > -1)

最新更新