返回多个对象的{.maxBy值

时间:2018-06-04 16:08:26

标签: javascript lodash

我可以通过以下方式从我的数据中返回一个对象的最高值:

highest = Math.ceil(_.maxBy(stats, 'success' ).success );

返回成功值。但我希望从“成功”和“不成功”对象中返回的最高值返回最高值。 (不止一个对象)

这样的事情:

highest = Math.ceil(_.maxBy((stats, 'success' ).success ) && ((stats, 'unsuccessful' ).unsuccessful));

const stats = [{ success: 52 }, { unsuccessful: 65 }];

在这种情况下,我预计最高将返回“65”

1 个答案:

答案 0 :(得分:1)

这是在lodash中执行此操作的一种方法,使用lodash#maplodash#max获取successunsuccessful值的最高值。

const result = _(stats)
  .map(v => _.max([v.success, v.unsuccessful]))
  .max();



const stats = [{ success: 52 }, { unsuccessful: 65 }, { success: 0 }];

const result = _(stats)
  .map(v => _.max([v.success, v.unsuccessful]))
  .max();
  
console.log(result);

.as-console-wrapper{min-height:100%;top:0}

<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.10/lodash.min.js"></script>
&#13;
&#13;
&#13;