javascript - ajax获取到json数据后,如何筛选json满足特定值的对象??
本文介绍了javascript - ajax获取到json数据后,如何筛选json满足特定值的对象??的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
问 题
[
{
"province":"广东",
"item":[
{
"ID":"1",
"province_id":"7",
"title":"广东小吃 好吃真好吃",
"imgUrl":"http://xxxx/images/item/7_001.jpg",
"link":"https://xxxxxxxxx"
},
{
"ID":"2",
"province_id":"7",
"title":"广东炒饭 香喷喷爱上",
"imgUrl":"http://xxxx/images/item/7_001.jpg",
"link":"https://xxxxxxxxx"
}
]
},
{
"province":"江西",
"item":[
{
"ID":"1",
"province_id":"8",
"title":"江西小吃 好吃不上火",
"imgUrl":"http://xxxx/images/item/7_001.jpg",
"link":"https://xxxxxxxxx"
},
{
"ID":"2",
"province_id":"8",
"title":"江西炒饭 香喷喷",
"imgUrl":"http://xxxx/images/item/7_001.jpg",
"link":"https://xxxxxxxxx"
}
]
},
{
"province":"广西",
"item":[
{
"ID":"1",
"province_id":"9",
"title":"优质酱卤牛肉",
"imgUrl":"http://xxxx/images/item/7_001.jpg",
"link":"https://xxxxxxxxx"
},
{
"ID":"2",
"province_id":"9",
"title":"农家自制豆制品豆干豆腐",
"imgUrl":"http://xxxx/images/item/7_001.jpg",
"link":"https://xxxxxxxxx"
}
]
}
]
如上面是ajax获取到的json数据,我想要找到title="炒饭"(模糊搜索)所在的对象(符合条件的对象可能不止一个,只要符合都找出来),结果为:
{
"ID":"2",
"province_id":"7",
"title":"广东炒饭 香喷喷爱上",
"imgUrl":"http://xxxx/images/item/7_001.jpg",
"link":"https://xxxxxxxxx"
},
{
"ID":"2",
"province_id":"8",
"title":"江西炒饭 香喷喷",
"imgUrl":"http://xxxx/images/item/7_001.jpg",
"link":"https://xxxxxxxxx"
}
js白痴一枚,求大神指导,我能无耻的求一份demo吗?再不济也请告诉我一下如何实现的思路好么?还有两天,做不出来就完蛋了,跪求!
解决方案
var oJson = [{
"province": "广东",
"item": [{
"ID": "1",
"province_id": "7",
"title": "广东小吃 好吃真好吃",
"imgUrl": "http://xxxx/images/item/7_001.jpg",
"link": "https://xxxxxxxxx"
}, {
"ID": "2",
"province_id": "7",
"title": "广东炒饭 香喷喷爱上",
"imgUrl": "http://xxxx/images/item/7_001.jpg",
"link": "https://xxxxxxxxx"
}]
}, {
"province": "江西",
"item": [{
"ID": "1",
"province_id": "8",
"title": "江西小吃 好吃不上火",
"imgUrl": "http://xxxx/images/item/7_001.jpg",
"link": "https://xxxxxxxxx"
}, {
"ID": "2",
"province_id": "8",
"title": "江西炒饭 香喷喷",
"imgUrl": "http://xxxx/images/item/7_001.jpg",
"link": "https://xxxxxxxxx"
}]
}, {
"province": "广西",
"item": [{
"ID": "1",
"province_id": "9",
"title": "优质酱卤牛肉",
"imgUrl": "http://xxxx/images/item/7_001.jpg",
"link": "https://xxxxxxxxx"
}, {
"ID": "2",
"province_id": "9",
"title": "农家自制豆制品豆干豆腐",
"imgUrl": "http://xxxx/images/item/7_001.jpg",
"link": "https://xxxxxxxxx"
}]
}];
var aSearch = [];
oJson.forEach(function(ele){//循环外层数组
var aTemp = ele.item.filter(function(i){
return i.title.includes('炒饭'); // 过滤符合要求的item数组
});
aSearch = aSearch.concat(aTemp); // 将符合要求的数组合并到aSearch;
});
console.log(aSearch);
这篇关于javascript - ajax获取到json数据后,如何筛选json满足特定值的对象??的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文