【发布时间】:2021-09-27 00:56:00
【问题描述】:
我需要按属性值过滤嵌套对象。我知道以前有人问过类似的问题,但是对于将值存储在数组中的情况,我找不到解决方案。
在提供的代码示例中,我需要根据标签过滤对象。我想在标签数组中获取包含“a”和“b”的对象。
const input1 = {
"0":{
"id":"01",
"name":"item_01",
"tags":["a","b"],
},
"1":{
"id":"02",
"name":"item_02",
"tags":["a","c","d"],
},
"2":{
"id":"03",
"name":"item_03",
"tags":["a","b","f"],
}
}
function search(input, key) {
return Object.values(input).filter(({ tags }) => tags === key);
}
console.log(search(input1, "a"));
作为输出,我想收到休耕:
{
"0":{
"id":"01",
"name":"item_01",
"tags":["a","b"],
},
"2":{
"id":"03",
"name":"item_03",
"tags":["a","b","f"],
}
}
提前非常感谢!
【问题讨论】:
标签: javascript arrays filter nested-object