js 获取对象数组中某个字段的最大值和最小值

const arr = [
  { id: 1, value: 10 },
  { id: 2, value: 5 },
  { id: 3, value: 8 },
  { id: 4, value: 3 },
  { id: 5, value: 12 }
];

const min = arr.reduce((prev, current) => (prev.value < current.value ? prev : current)).value;
const max = arr.reduce((prev, current) => (prev.value > current.value ? prev : current)).value;

console.log(min); // 3
console.log(max); // 12

在上述示例中,我们使用Array.reduce()方法迭代对象数组arr。我们使用两个回调函数作为reduce()的参数。第一个回调函数用于比较两个元素的值,然后返回值较小的元素。第二个回调函数用于比较两个元素的值,然后返回值较大的元素。这样,通过迭代数组元素,并根据字段的值来更新最小值和最大值,我们最终得到了最小值和最大值。

请注意,在此示例中,假设对象数组的字段值都是数值类型。如果你的字段值是其他类型(字符串、日期等),请根据实际情况进行适当的比较处理。

posted @   小小菜鸟04  阅读(1896)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 零经验选手,Compose 一天开发一款小游戏!
· 因为Apifox不支持离线,我果断选择了Apipost!
· 通过 API 将Deepseek响应流式内容输出到前端
历史上的今天:
2022-07-21 获取当月有几周 以及日期
2022-07-21 根据年和周数,返回这周起止时间
点击右上角即可分享
微信分享提示