lodash:从对象的数组对象获取 - 深的搜索和多predicates [英] lodash: get object from an array of objects - deep search and multiple predicates
本文介绍了lodash:从对象的数组对象获取 - 深的搜索和多predicates的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有这样的:
OBJ文件= {
OBJ1:[{金额:5,新:真正},{金额:3,新:假}],
OBJ2:[{量:1,新:真正},{金额:2,新的:假}]
}
和我想要得到一个对象,其中新:真正的
和量的最大值
结果= {金额:5,新:真正}
解决方案
通过lodash 4.x的:
无功的OBJ = {
OBJ1:[{金额:5,新:真正},{金额:3,新:假}],
OBJ2:[{金额:10,新的:真正},{金额:2,新的:假}]
};VAR的结果= _(OBJ文件)
.MAP(价值=>值)
.flatten()
.filter(OBJ => obj.new)
.orderBy('量','说明')
。第一();
I have this:
objs = {
obj1 : [{ amount: 5, new: true }, { amount: 3, new: false }],
obj2: [{ amount: 1, new: true }, { amount: 2, new: false }]
}
And I want get one object where new: true
and with maximum value of amount
result = { amount: 5, new: true }
解决方案
With lodash 4.x:
var objs = {
obj1 : [{ amount: 5, new: true }, { amount: 3, new: false }],
obj2: [{ amount: 10, new: true }, { amount: 2, new: false }]
};
var result = _(objs)
.map(value => value)
.flatten()
.filter(obj => obj.new)
.orderBy('amount', 'desc')
.first();
这篇关于lodash:从对象的数组对象获取 - 深的搜索和多predicates的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文