Подтвердить что ты не робот

"Подсчитать, где" в коллекции

Используя lodash, что было бы хорошим способом подсчитать количество объектов в коллекции условно? Скажем, я хотел подсчитать количество объектов, в которых

a < 4

в следующем сборнике

[{a : 1}, {a : 2}, {a : 3}, {a : 4}, {a : 5}, {a : 6}]
4b9b3361

Ответ 1

Ниже вы можете найти простой способ достичь этого с помощью метода filter:

var b = _.filter(a, function(o) { if (o.a < 4) return o }).length;

Ответ 2

Вы можете использовать sumBy для этого:

const count = _.sumBy(
  objects,
  ({ a }) => Number(a < 4)
);

Кроме того, вы можете написать это с помощью lodash/fp:

const count = _.sumBy(_.flow(_.get('a'), _.lt(4), Number), objects);

Ответ 3

Другое решение заключается в использовании _.countBy:

const count = _.countBy(arr, o => oa < 4).true