javascript - jQuery 动态生成 grep()

标签 javascript jquery

我正在使用 $.grep() 来提取一组 JSON 结果,如下所示:

myObject.appJSON = jQuery.grep(myObject.appJSON, function (a) { 
        return a.category == "Entertainment"; 
    });

而且效果很好。但我最终真正想做的是有几个复选框,这样我就可以过滤几个不同的东西。我意识到要做到这一点,我可以做类似的事情:

myObject.appJSON = jQuery.grep(myObject.appJSON, function (a) { 
        return (a.category == "Entertainment" && a.category == "Business"); 
    });

但我真正的问题是如何让这一切动态发生,所以我基本上可以为 grep 返回建立一串特征。也许我在这里展示了我是多么的新手,但是能够生成长过滤器字符串然后将其弹出到返回中几乎是很好的。看起来就像现在一样,必须对返回进行硬编码。 我意识到这可能很简单,但网上很少有关于如何做这种事情的信息。 提前致谢!

最佳答案

你可以像这样搜索一个数组:

myObject.appJSON = jQuery.grep(myObject.appJSON, function (a) { 
    return $.inArray(a.category, someArray) > -1;
});

关于javascript - jQuery 动态生成 grep(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3320143/

相关文章:

jquery - 将所选文本缩进 4 个空格

javascript按键多条记录问题

javascript - Firebase 获取键值

javascript - 如何获取连接的wifi网络名称

javascript - AngularJS:尽管绑定(bind)到服务变量,但 Controller 变量未更新

javascript - 如何为动态创建的数据库元素显示弹出式 div

javascript - 如何在 Javascript 中使用 URL 链接不同的幻灯片图像

javascript - 为什么异步请求应该在 componentDidMount 中而不是 ReactJS 中的 getInitialState 中发出?

javascript - 在 Javascript 中格式化 Razor ViewData

javascript - onclick,如何隐藏 <div> 并显示其后面的内容?