我的模拟数据:
[
{
"id": 1,
"first_name": "Suzy",
"last_name": "Pinnell",
"email": "spinnell0@utexas.edu",
"gender": "Agender",
"image": "http://dummyimage.com/410x239.png/5fa2dd/ffffff",
"department": "Marketing",
"job_title": "Quality Control Specialist",
"skill": "Residential Homes"
},
{
"id": 2,
"first_name": "Enriqueta",
"last_name": "Folbig",
"email": "efolbig1@google.com.br",
"gender": "Male",
"image": "http://dummyimage.com/247x244.png/5fa2dd/ffffff",
"department": "Sales",
"job_title": "Environmental Specialist",
"skill": "MMC"
},
{
"id": 3,
"first_name": "Simmonds",
"last_name": "Acomb",
"email": "sacomb2@amazon.co.uk",
"gender": "Polygender",
"image": "http://dummyimage.com/315x256.png/dddddd/000000",
"department": "Human Resources",
"job_title": "Accountant",
"skill": "Xilinx"
},
{
"id": 4,
"first_name": "Bernita",
"last_name": "Hartman",
"email": "bhartman3@whitehouse.gov",
"gender": "Female",
"image": "http://dummyimage.com/305x275.png/dddddd/000000",
"department": "Support",
"job_title": "Account ExecutiveII",
"skill": "Airframe"
}
]
我在这里找到了一个类似的问题:javascript filter array multiple conditions
为了定义筛选条件,他们传递了一个对象:
var filter = {
gender: 'male',
department: 'Sales'
};
这个代码可以正常运行。它展示了每个同时包含这两个键的对象。
+我试图对它进行修改,以便能够使用一个数组:*
var filter = {
gender: ['Male'],
department: ['Sales', 'Marketing']
};
我的目标是根据数组中给定的值过滤数据。只有包含销售和市场营销中所有男性员工的项才应该出现。
我尝试了使用 includes(在 filter 和 for-in 循环内部),但它仅显示第一个数组的结果,第二个被忽略了。我不确定如何在所有数组中实现 AND 条件。
谢谢。
var filter = { gender: ['Male'], department: ['Sales'] };
这个不行:var filter = { gender: ['Male'], department: ['Sales', 'Marketing'] };
- Vorname Nachname||
后面交换了filter
和item
。已经编辑并修复了。 - Mureinik