从值数组中获取多个最大值

波尔

例如,underscore/lowdash您可以使用_.max(list, [iterator], [context])函数接收一个最大值。但是,如果它们都相等,我希望它返回多个最大值。

var stooges = [{name: 'moe', age: 40}, {name: 'larry', age: 50}, {name: 'curly', age: 50}];

_.max(stooges, function(stooge){ return stooge.age; });

=> {name: 'curly', age: 50};

我想要这样的东西:

var stooges = [{name: 'moe', age: 40}, {name: 'larry', age: 50}, {name: 'curly', age: 50}];

_.multiplemax(stooges, function(stooge){ return stooge.age; });

=> [{name: 'curly', age: 50},  {name: 'larry', age: 50 ];

可以使用下划线。

谭阮

是否有任何特殊要求,例如您无法将多个功能组合在一起以做multimax。如果没有,我脑中有2种解决方案

最简单的解决方案是使用_.max查找age数组的最大值,然后使用_.filter过滤所有等于max的值age

另一种解决方案是使用_.groupBy对数组进行分组age,然后使用maxage

像这样

function multiplemax(arr, compare) {
  var groups = _.groupBy(arr, compare);
  var keys = _.keys(groups);
  var max = _.max(keys);
  return groups[max];
}

更多“下划线”

_.mixin({
  multiplemax: function(arr, fn) {
    var groups = _.groupBy(arr, fn);
    var keys = _.keys(groups);
    var max = _.max(keys);
    return groups[max];
  }
})

或使用max+filter

function multiplemax(arr, compare) {
  var max = _.max(arr, function(v){return v[compare]});
  return _.filter(arr, function(v){return v[compare]==max[compare]});
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

获取Java数组中n个最大值的索引

来自分类Dev

从对象的数组列表中获取最大值?

来自分类Dev

PHP从数组获取多个最大值

来自分类Dev

MSSQL通过ID从多个列中获取最大值

来自分类Dev

数组中的最大值(StdClass错误)

来自分类Dev

获取多维数组中每列的最大值

来自分类Dev

javascript-在多维数组中获取最大值

来自分类Dev

获取变量,其值是数组中的最大值

来自分类Dev

计算数组中的最大值

来自分类Dev

MongoDb查询以获取数组中字段的最大值

来自分类Dev

我如何从数组中获取4个最大值

来自分类Dev

如何获取数组中数组的最小值和最大值?

来自分类Dev

(JavaScript)获取数组中备用值的总和,并从中获取最大值

来自分类Dev

从熊猫中的多个对象获取最大值.max()

来自分类Dev

从多列数组中获取最大值

来自分类Dev

获取逻辑应用程序中的数组的最大值?

来自分类Dev

如何从字典中获取多个最大值

来自分类Dev

如何在对象数组中获取最大值

来自分类Dev

从数组中获取5个最大值的键

来自分类Dev

从对象的数组列表中获取最大值?

来自分类Dev

PHP从数组获取多个最大值

来自分类Dev

联接表中的多个最大值

来自分类Dev

在JS中获取已过滤对象数组的最大值

来自分类Dev

查找表格中的多个最大值

来自分类Dev

如何从数组php获取最大值

来自分类Dev

使用多个键从哈希表中获取最大值

来自分类Dev

如何获取DataFrame列中多个数组中对应项的最大值?

来自分类Dev

通过 id 从对象数组中获取属性的最大值

来自分类Dev

从mongodb中的数组中获取最大值