javascript - ajax获取到json数据后,如何筛选json满足特定值的对象??
天蓬老师
天蓬老师 2017-04-11 13:24:29
[JavaScript讨论组]
[
    {
        "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吗?再不济也请告诉我一下如何实现的思路好么?还有两天,做不出来就完蛋了,跪求!

天蓬老师
天蓬老师

欢迎选择我的课程,让我们一起见证您的进步~~

全部回复(2)
高洛峰

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);
迷茫
function getSelect(name, arr) {
    var reg = new RegExp(name);
    arr.forEach(function(arr_item, i) {
        arr_item.item = arr_item.item.filter(function(inner, j) {
            return reg.test(inner.title)
        })
    })

    return arr
}
console.log(getSelect('炒饭', data))
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号