2016-02-22 14 views
20

Sử dụng lodash, cách tốt nhất để đếm số đối tượng trong bộ sưu tập có điều kiện là gì? Nói rằng tôi muốn đếm số lượng các đối tượng nơi"Đếm nơi" trong bộ sưu tập

a < 4 

trong bộ sưu tập sau

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

Trả lời

26

Dưới đây bạn có thể tìm thấy một cách dễ dàng để đạt được điều đó bằng cách sử dụng filter phương pháp:

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

Bạn có thể sử dụng sumBy cho số này

const count = _.sumBy(objects, i => (i.a < 4 ? 1 : 0)); 

tôi thích lodash/fp vì vậy tôi muốn làm

const aIsLessThan4 = _.flow(_.get('a'), _.lt(4), Number) 
const count = _.sumBy(aIsLessThan4, objects) 
Các vấn đề liên quan