我正在尝试从数组对象中获取具有最长数组长度的属性的对象。
[ {a:[...],...}, {a:[...],...}, ... } ]
Lodash 有 maxBy
来获取具有最大值的 property
对象,但我想检查属性数组的长度。我的对象也有一个 getCount()
函数,但它也不起作用,所以我猜这是因为 lodash 只能检查属性的数值。 lodash 的 maxBy
能否以某种方式使用数组的长度作为条件?
最佳答案
您可以使用 _.maxBy
:
let arr = [{a: [1]}, {a: [1,2]}, {a: [1,2,3]}];
// with a lambda
console.log(_.maxBy(arr, obj => obj.a.length));
// with `_.property` iteratee shorthand
console.log(_.maxBy(arr, 'a.length'));
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.15/lodash.min.js"></script>
关于javascript - 获取具有给定属性的最大数组长度的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57584239/