Underscore.js _.groupBy函数

Underscore.js _.groupBy函数

Underscore.js是一个JavaScript库,它提供了很多有用的函数,对编程有很大的帮助,如map、filter、invoke等,甚至不需要使用任何内置对象。_.groupBy()函数是用来收集所传递的数组中的元素的。它的工作原理是将每个元素的值与其他元素相匹配。如果它们匹配,那么它们就被放在一个集合中,否则我们将有两个集合/组。我们也可以通过一个函数,根据它的结果来收集这些元素。它可以在数字的基础上分组,也可以按字符串分组。语法。

_.groupBy( list, iterate, context ) 

参数:该函数接受上面提到的和下面描述的三个参数。

  • list。该参数包含元素列表。
  • iterate。这个参数包含用于文本元素的条件。
  • context。它是用于显示的文本。它是可选参数。

返回值:它以不同的数组形式返回集合。

在_.groupBy()函数中使用Math.ceil(): _.groupBy()函数从列表中逐个获取元素并将其传递给Math.ceil()函数。然后函数的每个元素的输出将与Math.ceil()中另一个元素的输出相匹配,然后将它们放在一个组中,否则它们将被放在两个独立的组中。在所有元素与所有其他元素匹配后,
_.groupBy函数结束。

例子:

<html>
    <head>
        <script type="text/javascript" src=
        "https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore.js">
        </script>
    </head>
     
    <body>
        <script type="text/javascript">
            console.log(_.groupBy([2.7, 3.4, 6.6, 1.2, 2.0, 2.4], function(num) {
                return Math.ceil(num);
            }));
        </script>
    </body>
</html>                   

输出:

Underscore.js _.groupBy函数

在_.groupBy()函数中使用length():将数组元素传递给groupBy()函数并根据它们的长度来匹配元素。如果两个元素的长度相同,那么它们将被归入一个组,否则将形成两个组。

例子:

<html>
    <head>
        <script type="text/javascript" src=
        "https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore.js">
        </script>
    </head>
    <body>
        <script type="text/javascript">
           console.log(_.groupBy(['HTML', 'CSS3', 'JS', 'PHP'], 'length'));
        </script>
    </body>
</html>

输出:

Underscore.js _.groupBy函数

使用_.groupBy()函数中传递的数组的一个属性:首先,声明数组(这里数组是’arr’)。选择一个需要检查的条件,如这里的’prop3’。然后,在’prop3’中具有相同值的元素将被归入一个组。Console.log最后的答案。

例子:

<html>
    <head>
        <script type="text/javascript" src=
        "https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore.js">
        </script>
    </head>
    <body>
        <script type="text/javascript">
            var arr =  [
                    {prop1:"10", prop2:"07", prop3: "Geeks"},
                    {prop1:"12", prop2:"86", prop3: "for"},
                    {prop1:"11", prop2:"58", prop3: "Geeks"}
                ];
               console.log(_.groupBy(arr, 'prop3'));
        </script>
    </body>
</html>

输出:

Underscore.js _.groupBy函数

将’date’作为数组的属性一起传递给_.groupBy()函数:首先定义一个数组,其中一个属性是格式为’dd-mm-yy’的’date’。然后将数组和’date’属性传递给_.groupBy()函数。具有相同日期的元素将被归入一个组。组的编号将从0开始。

例子:

<html>
    <head>
        <script type="text/javascript" src=
        "https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore.js">
        </script>
    </head>
    <body>
        <script type="text/javascript">
               var orders = [
                           {    date:"30-60-90 Day", Name:"Kim", amount:415     },
                    {   date:"30-60-90 Day", Name:"Kelly", amount:175     },
                    {   date:"30 Day", Name:"Shelly", amount:400     },
                    {   date:"30 Day", Name:"Sarvesh", amount:180     }
                    ];
                console.log(_.groupBy(orders, "date"));
        </script>
    </body>
</html>

输出:

Underscore.js _.groupBy函数

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程