一尘不染

使用jQuery grep()过滤JSON数组

json

我在此站点上搜索了许多示例,但似乎无法满足我的需求。我只需要使用过滤一些JSON结果grep()

以下是我的JSON:

var data = { "items": [
    {
        "id":       1,
        "category": "cat1"
    },
    {        
        "id":       2,
        "category": "cat2"
    },
    {
        "id":       3,
        "category": "cat1"
    }
]}

上面的例子

  • 如何退回所有类别为的项目cat1
  • 我将如何退回所有类别为cat1id的项目?

我知道这不是一个很好的例子,但是任何帮助都会很棒!谢谢!

我尝试了以下变化

data.items = $.grep(data.items, function(element, index) {
    return element.id == 1;
    console.log(data.items);
});

阅读 328

收藏
2020-07-27

共1个答案

一尘不染

var data = {
    "items": [{
        "id": 1,
        "category": "cat1"
    }, {
        "id": 2,
        "category": "cat2"
    }, {
        "id": 3,
        "category": "cat1"
    }]
};

var returnedData = $.grep(data.items, function (element, index) {
    return element.id == 1;
});


alert(returnedData[0].id + "  " + returnedData[0].category);

returnData返回一个对象数组,因此您可以按数组索引访问它。

http://jsfiddle.net/wyfr8/913/

2020-07-27