Javascript或lodash:使用嵌套数组的值筛选对象数组
我有一组用户,如下所示(我缩短了它): 每个用户都有一组地区。 例如,我想得到一个过滤过的用户数组,其中包含“regions\u id\u region”=“11”的地区。洛达斯或香草就可以了。 我花了一整天的时间试图实现它,但没有成功。 欢迎任何帮助。Javascript或lodash:使用嵌套数组的值筛选对象数组,javascript,arrays,object,nested,lodash,Javascript,Arrays,Object,Nested,Lodash,我有一组用户,如下所示(我缩短了它): 每个用户都有一组地区。 例如,我想得到一个过滤过的用户数组,其中包含“regions\u id\u region”=“11”的地区。洛达斯或香草就可以了。 我花了一整天的时间试图实现它,但没有成功。 欢迎任何帮助。 谢谢。以下是如何使用过滤器: const用户=[{ “displayName”:“Alaotra”, “地区”:[{ “区域\标识\区域”:“11”, “id_区”:“102” }, { “区域\标识\区域”:“11”, “id_区”:“10
谢谢。以下是如何使用过滤器:
const用户=[{
“displayName”:“Alaotra”,
“地区”:[{
“区域\标识\区域”:“11”,
“id_区”:“102”
},
{
“区域\标识\区域”:“11”,
“id_区”:“101”,
}
]
},
{
“displayName”:“Alexandre”,
“地区”:[{
“区域\标识\区域”:“42”,
“id_区”:“411”,
},
{
“id_区”:“409”,
“区域\标识\区域”:“42”
}
]
}
]
const filtered=users.filter(u=>u.districts.some(d=>d.regions\u id\u region==11'))
console.log(已过滤)
以下是如何使用过滤器:
const用户=[{
“displayName”:“Alaotra”,
“地区”:[{
“区域\标识\区域”:“11”,
“id_区”:“102”
},
{
“区域\标识\区域”:“11”,
“id_区”:“101”,
}
]
},
{
“displayName”:“Alexandre”,
“地区”:[{
“区域\标识\区域”:“42”,
“id_区”:“411”,
},
{
“id_区”:“409”,
“区域\标识\区域”:“42”
}
]
}
]
const filtered=users.filter(u=>u.districts.some(d=>d.regions\u id\u region==11'))
console.log(过滤)
将您的尝试添加到问题中您希望结果是什么样子?这是否回答了您的问题?将您的尝试添加到问题中您希望结果是什么样子?这是否回答了您的问题?谢谢大家的回答,我觉得非常有用。如果“regions\u id\u region”在数组中,那么最好的方法是什么?[“11”,“42”]?谢谢大家的回答,我觉得非常有用。如果“regions\u id\u region”在数组中,那么最好的方法是什么?["11","42" ]?
[
{
"displayName": "Alaotra",
"districts": [
{
"regions_id_region": "11",
"id_district": "102"
},
{
"regions_id_region": "11",
"id_district": "101",
}
]
},
{
"displayName": "Alexandre",
"districts": [
{
"regions_id_region": "42",
"id_district": "411",
},
{
"id_district": "409",
"regions_id_region": "42"
}
]
}
]