当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


underscore.js _.flatten()用法及代码示例


Underscore.js_.flatten()function 是 JavaScript Underscore.js 库中的内置函数,用于展平嵌套到某个级别的数组。生成的数组将没有深度。它将被完全压扁。如果传递shallow参数,那么扁平化只会进行到一层。数组的深度由方括号的数量给出。示例: array[10, [20]] 包含 10 个深度为 1 的元素,因为它仅位于单个括号 ([]) 内,而元素 20 的深度为 2。

用法:

_.flatten(array, [shallow]);

参数:

  • array:该参数用于保存数组元素。
  • shallow:它用于将数组展平为单个级别。

返回值:

它将展平的数组返回到一层或所有层。

传递不带浅参数的列表_.flatten()函数:

_.flatten() 函数用于使嵌套数组展平。它将获取数组并删除其所有深度,使其达到 1 层。由于没有给出第二个参数,因此它的深度将会减少。

例子:此示例显示传递一个不带浅参数 _.flatten() 函数的列表。

html


<!DOCTYPE html>
<html>
<head>
    <script src=
"https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore-min.js">
    </script>
</head>
<body>
    <script type="text/javascript">
        console.log(_.flatten([1, [2], [3, [4, [5, [6, [7]]]]]])); 
    </script>
</body>
</html>

输出:

将第二个参数传递给 _.flatten() 函数:

将第二个参数传递给函数,以便将 n 深度数组展平为 n-1 深度。在下面的示例中,元素 1、2 和 3 仅包含在 1 个括号内,因此它们没有深度。元素 4 在给定数组中具有 2 个深度,因此现在它只有 1 个深度,因此在元素 1、2 和 3 中看不到它。 5 个元素的深度为 3,因此生成的数组将具有 2 的深度。同样,第 6 个元素的深度为 6。最后一个元素 7 的深度为 5,因此它将显示在最内部的数组中。

例子:这个例子显示了通过 _.flatten() 函数的第二个参数。

html


<!DOCTYPE html>
<html>
<head>
    <script src=
"https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore-min.js">
    </script>
</head>
<body>
    <script type="text/javascript">
        console.log(_.flatten([1, [2], [3, [4, [5, [6, [7]]]]]], true)); 
    </script>
</body>
</html>

输出:

使用浅层参数的另一个示例:

在此示例中,元素 1 的深度为 1,因此它将与 2 个元素的数组一起显示在起始级别。 1st元素包含 2 个元素,而第二个元素也有 2 个元素。第一个元素是 3,第二个元素在数组中也有 2 个元素。同样,该数组也有 4 个元素的数组。如此下去,最终的数组将包含元素 7。

例子:此示例显示了浅层参数的使用。

html


<html>
<head>
    <script src=
"https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore-min.js">
    </script>
</head>
<body>
    <script type="text/javascript">
        console.log(_.flatten([1, [[[2], [3, [4, [5, [6, [7]]]]]]]], true)); 
    </script>
</body>
</html>

输出:

带有浅参数的 _.flatten() 函数的另一个示例:

在此示例中,可以在第一层看到元素 1、4、6,因为它们的深度为 1。除此之外,第一层还包含一个 2 个元素的数组和 2 个各 1 个元素的数组。大小为 2 的数组包含下一级的元素 2 和 3。其中一个大小的数组包含 5,另一个包含下一级的 7,因为它们的原始深度为 2。

例子:此示例展示了带有浅参数的 _.flatten 函数的使用。

html


<!DOCTYPE html>
<html>
<head>
    <script src=
"https://cdnjs.cloudflare.com/ajax/libs/underscore.js/1.9.1/underscore-min.js">
    </script>
</head>
<body>
    <script type="text/javascript">
        console.log(_.flatten([1, [[[2], [3]]], [4, [5]], [6, [7]]], true)); 
    </script>
</body>
</html>

输出:



相关用法


注:本文由纯净天空筛选整理自Sakshi98大神的英文原创作品 Underscore.js _.flatten() Function。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。