【问题标题】:How do I filter an array object with multiple filterBy values?如何过滤具有多个 filterBy 值的数组对象?
【发布时间】:2023-01-10 17:00:37
【问题描述】:

我正在尝试过滤具有数组值的数组对象。

const arrayData = [
  {
    name: 'abc',
    designation: 'senior',
    phone: '3589234556',
    address: 'Address 1'
  },
  {
    name: 'pqr',
    designation: 'junior',
    phone: '',
    address: 'Address 2'
  },
  {
    name: 'xyz',
    designation: 'senior',
    phone: '3589234557',
    address: ''
  }
]

const filterBy = ['senior','junior', 'missing_contact_info']

注意:'missing_contact_info' 表示 'phone' 或 'address' 是否为空或 null

预期条件:-

条件一:senior

条件2:senior+junior

条件3:senior+junior+missing_contact_info

条件4:senior+missing_contact_info

. . . ETC

【问题讨论】:

  • 你尝试了什么?
  • @ashishsingh 我尝试使用arrayData.filter(el => !filterBy.includes(el.designation))但不确定如何使用missing_contact_info实现

标签: javascript arrays object filter


【解决方案1】:

这是我对你问题的解决方案

const result = arrayData.filter(c=>filterBy.includes(c.designation));

【讨论】:

  • missing_contact_info 呢?
  • 在 filter() 中你插入了一个函数,你可以在其中添加多个条件,我现在将更新我的示例
猜你喜欢
  • 1970-01-01
  • 2021-07-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-10-25
  • 2016-02-14
相关资源
最近更新 更多