javascript - 如何从数组中的对象中获取最小整数?
问题描述
基本上我想要实现的是来自与其他对象的数组中的对象的最小整数。
r.Collection
是一个包含 3 个对象的数组,所以它看起来像这样:
[{foo:"bar",abc:"xyz",number:1},{foo:"car",abc:"hcu",number:2},{foo:"tar",abc:"uif",number:3}]
现在的目标是对这个数组进行排序。并查看每个数值,一旦找到最小值。我需要它将整个对象拉出数组以供以后使用。
目前我正在尝试做的事情不起作用,我不确定。我可能做错了
for (o in r.Collection) {
var data = r.Collection[o]
console.log(Math.min(data.number))
}
我知道使用 Math.min 来查找数组中的最小数字,但是当我运行此代码时,每个对象都会被打印出来。
我如何对这个数组进行排序,以提取我们的具有最低数值的对象?
解决方案
Math.min
对此有点简单 - 无法在具有多个值的对象中指定 min 的含义。
您可以使用reduce()
循环列表中的项目并跟踪当前最低的项目。根据传递给 reduce 的函数,结果将是列表中最低的:
let l = [{foo:"bar",abc:"xyz",number:1},{foo:"car",abc:"hcu",number:2},{foo:"tar",abc:"uif",number:3}]
let lowest = l.reduce((lowest, item) => item.number < lowest.number ? item: lowest)
console.log(lowest)
推荐阅读
- sql - 一段时间内的总销售额
- python - 无法使用python从列表元素中删除双引号
- python - 如何在没有硒的情况下使用 python 读取 chrome 控制台?
- java - 什么可能导致计时器在 RecyclerView 中闪烁?
- python-3.x - 是否可以在 __name__ == '__main__' 块中获取要执行的脚本的内容(其文件名或内容)?
- python - 为什么建议不要在 conda 基础环境中安装额外的包?它的目的是什么?
- ruby - Jekyll:不允许操作@ apply2files
- python - Python,getopt,如何获取列表
- angular - 使用 i18n 角度翻译列表项
- ruby-on-rails - 如何验证关联的每个实例的限制,而不是 Rails 中的关联本身