Filter Lodash?按多个键进行过滤

Filter Lodash?按多个键进行过滤,filter,lodash,Filter,Lodash,我有这样的对象数组: var chart = [ { "IDACCT": 28, "LVLCOA": 2, "IDPRNT": 1, "NMACCI": "110-000 - ASSETS" }, { "IDACCT": 76, "LVLCOA": 2, "IDPRNT": 1,

我有这样的对象数组:

var chart = [
        {
            "IDACCT": 28,
            "LVLCOA": 2,
            "IDPRNT": 1,
            "NMACCI": "110-000 - ASSETS"
        },
        {
            "IDACCT": 76,
            "LVLCOA": 2,
            "IDPRNT": 1,
            "NMACCI": "170-000 - FIXED ASSETS"
        }
    ];
我想使用两个键返回搜索(谓词)所基于的对象:

d = _.filter(chart,function(o,e){
                return  o.LVLCOA === 2 && o.IDPRNT === e        
            });

这不管用。我需要为函数提供一些参数。功能中未识别问题e

当然,当您尝试将一个数字与未声明的变量进行比较时,
e
。我想您想将它与另一个数字进行比较?

在您的特定情况下,您可以通过两个
filter()
调用设置一个链,并完全取消谓词函数。传递
filter()
对象速记就足够了:

var e = 1;
var d = _(chart)
  .filter({ LVLCOA: 2 })
  .filter({ IDPRNT: e })
  .value();

我想是的。e来自处理程序事件。有什么建议吗?不管怎样,但当我使用console.log(e)时。它会打印出数字,我会更新关于这个问题的论点。但e仍然无法识别当您将断点放在该行上时,当您将鼠标悬停在
e
上时,或者当您当时执行
console.log
时会发生什么情况?它会按顺序记录所有图表对象索引。例:0,1,2,3,…,438。注意:我在图表中有439个数组对象项。