使用jquery grep过滤json数组

前端之家收集整理的这篇文章主要介绍了使用jquery grep过滤json数组前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我在这个网站上搜索了很多例子,但似乎无法满足我的需求.

我只需要使用grep过滤一些json结果,下面是json.

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

以上例子……

>我如何返回cat1类别的所有项目?
>我如何返回cat1类别和id为3的所有项目?

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

我尝试过以下各种变体

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

解决方法

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);

returnedData返回一个对象数组,因此您可以通过数组索引访问它.

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

猜你在找的jQuery相关文章