温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

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

发布时间:2023-04-18 10:14:09 来源:亿速云 阅读:114 作者:iii 栏目:开发技术

今天小编给大家分享一下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 }

    以上就是“js怎么查找json数据中的最大值和最小值”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注亿速云行业资讯频道。

    向AI问一下细节

    免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

    AI