添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
相关文章推荐
近视的口罩  ·  C# ...·  1 年前    · 
销魂的自行车  ·  Java Agent + ...·  1 年前    · 
首页 > 网络编程 > JavaScript > javascript技巧 > js查找json数据中的最大值和最小值

js如何查找json数据中的最大值和最小值方法

作者:上网的虫不叫网虫

这篇文章主要介绍了js如何查找json数据中的最大值和最小值方法,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

js查找json数据中的最大值和最小值

js操作数组的方式有很多种,查找json数据中的最大值和最小值也是经常用到,那么接下来就介绍2种方式来实现。

先准备好json数据,根据数组中的age值比较大小:

var array = [
    {name:'张三1',age:10},
    {name:'张三2',age:40},
    {name:'张三3',age:40},
    {name:'张三4',age:33},
    {name:'张三5',age:2},
    {name:'张三6',age:2},

使用Math对象来获取最大值和最小值

1. 获取最大值:

var max = Math.max.apply(Math, array.map(function(o) {
    return o.age;
console.log(max);// 40

2. 获取最小值:

var min = Math.min.apply(Math, array.map(function(o) {
    return o.age;
console.log(min);// 2

使用for循环来获取最大值和最小值

1. 获取最大值:

var max = arr[0].age;
    for (var i = 1; i < arr.length; i++) {
    max = max < arr[i].age ? arr[i].age : max;
console.log(max);// 40

2. 获取最小值:

var min = arr[0].age;
for (var i = 1; i < arr.length; i++) {
    min = min > arr[i].age ? arr[i].age : min;
console.log(min);// 2

获取最大值和最小值返回对应的json数据

1. 获取含有最大值的数据:

var maxAgeArr = arr.filter(item=>item.age==max);
console.log(maxAgeArr);//[{name:'张三2',age:40},{name:'张三3',age:40}]

2. 获取含有最小值的数据:

var minAgeArr = arr.filter(item=>item.age==min);
console.log(minAgeArr);//[{name:'张三5',age:2},{name:'张三6',age:2}]

用reduce()获取JSON中某个字段值最大的项

获取JSON中value值最大的项

value: 1 value: 2 value: 3
array.reduce(callback[, initialValue])
参数说明
array必需。数组对象
callback必需。一个接受最多四个参数的函数。对于数组中的每个元素,reduce 方法都会调用 callback函数一次。
initialValue可选。如果指定 initialValue,则它将用作初始值。第一次调用 callback 函数会将此值作为参数。

通过最后一次调用回调函数获得的累积结果。

回调函数语法

function callbackfn(previousValue, currentValue, currentIndex, array)
参数说明
previousValue通过上一次调用回调函数获得的值。如果向 reduce 方法提供 initialValue,则在首次调用函数时,previousValue 为 initialValue。
currentValue当前数组元素的值。
currentIndex当前数组元素的数字索引。
array包含该元素的数组对象。
let maxValue = data.reduce((prev, cur) => {
  return prev.value > cur.value ? prev : cur
// maxValue = { value:3 }

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:
  • 一文解析ChatGPT 之 Fetch 请求
    一文解析ChatGPT 之 Fetch 请求
    2023-03-03
  • 如何使用js查找数组中符合条件的元素
    如何使用js查找数组中符合条件的元素
    2023-04-04
  • js如何查找json数据中的最大值和最小值方法
    js如何查找json数据中的最大值和最小值方法
    2023-04-04
  • JavaScript中检测数据类型的四种方法总结
    JavaScript中检测数据类型的四种方法总结
    2023-04-04
  • js如何查找json数据中的最大值和最小值方法
    js如何查找json数据中的最大值和最小值方法
    2023-04-04
  • uni.getLocation和wx.getLocation方法调用无效也不返回失败的解决方案
    uni.getLocation和wx.getLocation方法调用无效也不
    2023-04-04
  • 8个JavaScript中高阶函数的运用分享
    8个JavaScript中高阶函数的运用分享
    2023-04-04
  • JS中Map、WeakMap和Object的区别解析
    JS中Map、WeakMap和Object的区别解析
    2023-04-04
  • 美国设下计谋,用娘炮文化重塑日本,已影响至中国
    美国设下计谋,用娘炮文化重塑日本,已影响至中国
    2021-11-19
  • 时空伴随者是什么意思?时空伴随者介绍
    时空伴随者是什么意思?时空伴随者介绍
    2021-11-09
  • 工信部称网盘企业免费用户最低速率应满足基本下载需求,天翼云盘回应:坚决支持,始终
    工信部称网盘企业免费用户最低速率应满足基本下载需求,天翼云盘回应:坚决支持,始终
    2021-11-05
  • 2022年放假安排出炉:五一连休5天 2022年所有节日一览表
    2022年放假安排出炉:五一连休5天 2022年所有节日一览表
    2021-10-26
  • 电脑版 - 返回首页

    2006-2023 脚本之家 JB51.Net , All Rights Reserved.
    苏ICP备14036222号