【问题标题】:How to find maximum value of a parameter in an object in an array?如何在数组中的对象中找到参数的最大值?
【发布时间】:2016-09-23 19:45:33
【问题描述】:

我有一个这样的数组。我想知道序列的最大值。

                            array = [
                        {


                            "Id" : "123",
                            "Description" : "A Test 1",
                            "isSelected": true,
                            "Sequence" : 1
                        },
                        {
                            "Id" : "124",
                            "Description" : "C Test 2",
                            "isSelected": true,
                            "Sequence" : 2
                        },
                        {
                            "Id" : "125",
                            "Description" : "B Test 3",
                            "isSelected": true,
                            "Sequence" : 3
                        },
                        {
                            "Id" : "126",
                            "Description" : "Z Test 4",
                            "isSelected": true,
                            "Sequence" : 4
                        }
]

现在我想找出具有最大值的序列。在这种情况下,它将是 4。我需要这个值与用户在输入中输入的值相匹配。我尝试了 Math.max,但它给了我未定义的信息。谢谢你的帮助。

【问题讨论】:

  • 我需要 Jquery 中的解决方案。谢谢
  • 不要diss SO用户 - 显示你的代码尝试!
  • 要求别人为你写代码是不礼貌的。请尝试一些东西,然后问一个问题,如果它不起作用。您可以使用Math.max and Array.map 将其写在一行中
  • 创建一个包含所有序列值的数组。然后从数组中获取最大值,如下所述:stackoverflow.com/questions/14693568/…
  • 当然我在问问题,因为它不起作用,我提到我尝试了 Math.max 但给了我未定义的,不想复制控制台输出,只是寻求帮助,任何提示会有所帮助。

标签: jquery arrays json object


【解决方案1】:

我通常不只是粘贴代码,但任何 JavaScript 初学者都可以从这个回答您问题的 sn-p 中学到一些东西。不需要 jQuery。

Math.max.apply(Math, array.map(o => o.Sequence));

// With the new spread operator, it could be
// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Spread_operator
Math.max(...array.map(o => o.Sequence)); 

array.map 将创建一个包含所有序列的数组。 Math.max 为您提供传入参数的最大值,但它通常被称为 Math.max(2,5,4,7,4,9),因此我使用 Function.apply 将数组展开为单独的参数。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-06
    • 1970-01-01
    相关资源
    最近更新 更多