给出如此数据结构:
"items":
{
"Groups":[
{
"title":"group 1",
"SubGroups":[
{
"title":"sub1",
"id" : "1",
"items":[
{
"title":"Ajax request 1",
},
{
"title":"Ajax request 2",
}
]
},
{
"title":"sub2",
"id" : "2",
"items":[
{
"title":"Ajax request 3",
},
{
"title":"Ajax request 4",
}
]
}
]
}
]
如何根据ID提取子组的所有项目?我喜欢使用这样的发现:
var res1 = _.where(listing.items,{id:"2"});
但是返回一个空数组
由于
答案 0 :(得分:2)
尝试定位子组数组,然后在那里搜索所需的ID。那应该返回该子组的属性。
var obj = {
"Groups": [{
"title": "group 1",
"SubGroups": [{
"title": "sub1",
"id": "1",
"items": [{
"title": "Ajax request 1",
}, {
"title": "Ajax request 2",
}]
}, {
"title": "sub2",
"id": "2",
"items": [{
"title": "Ajax request 3",
}, {
"title": "Ajax request 4",
}]
}]
}]
}
然后找到像这样的值
_.where(obj.Groups[0].SubGroups, {
'id': '2'
});
刚刚测试过,这似乎有用