正确的lodash方法

Proper lodash method

我有一个名为 slip 的对象,这个对象包含一个 属性 active 属性是 '1',而 slip 对象不是选择 属性 active 具有属性 '0'.

我有一个函数,仅当 属性 active 具有属性 '0' 时才需要应用。我想知道在这种情况下最好使用哪种 Lodash 方法

var applyStraightWin = function(slip, amount) {
      var moneyLine = _.result(_.find(slip.lines, {isSelected: '1'}), 'moneyLine');
      _.filter(slip.active, function(pickActive) {
        if (pickActive == '1') {
          _.assign(slip, {
            win: amount,
            risk: RiskWinCalculations.calculateStraightBet(amount, parseFloat(moneyLine, 10), false),
            riskSelected: false,
            winSelected: true
          });
        }
      });
    }

_.filter 方法正在做我想要的,正在取出 slip.active != 0。但是,从背景来看,有什么比 _.filter 方法更好用的方法吗?

[...] is there something better to use than the _.filter method

绝对:不使用它会好得多。

var moneyLine = _.result(_.find(slip.lines, {isSelected: '1'}), 'moneyLine');
if (slip.active == '1') {
   _.assign(slip, {
     win: amount,
     risk: RiskWinCalculations.calculateStraightBet(amount, parseFloat(moneyLine, 10), false),
     riskSelected: false,
     winSelected: true
   });
}

_.filter 的目的是 select 集合的一个子集。如果您想测试 属性 是否具有特定值,则使用该函数不正确。