📜  Underscore.js _.flatten()函数

📅  最后修改于: 2022-05-13 01:56:32.080000             🧑  作者: Mango

Underscore.js _.flatten()函数

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

句法:

_.flatten(array, [shallow])

参数:此函数包含两个参数,如下所示:

  • array:此参数用于保存数组元素。
  • 浅:用于将数组展平为单层。

返回值:返回扁平化数组的一级或所有级别。

传递不带浅参数的列表 _.flatten()函数: _.flatten()函数用于使嵌套数组展平。它将获取数组并删除其所有深度以使其处于 1 级。因为没有给出第二个参数,所以它的所有深度都会减少。

例子:



    
        
    
    
        
    
                    

输出:

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

例子:



    
        
    
    
        
    
                    

输出:

另一个使用 shallow 参数的示例:在此示例中,元素 1 的深度为 1,因此它将与 2 个元素的数组一起显示在起始级别。第一个元素包含 2 个元素,而第二个元素又包含 2 个元素。第一个元素是 3,第二个元素也是数组中的 2 个元素。同样,该数组也有 4 个和一个元素数组。像这样继续下去,那么最终的数组将包含元素 7。

例子:


   

    

   

    

   

输出:

具有浅参数的 _.flatten()函数的另一个示例:在此示例中,可以在第一级看到元素 1、4、6,因为它们的深度为 1。除此之外,第一级包含 2 个元素的数组和2 个数组,每个数组 1 个元素。大小为 2 的数组包含下一层的元素 2 和 3。一个大小的数组中的一个包含 5,另一个包含下一级的 7,因为它们的原始深度为 2。

例子:



    
        
    
    
        
    
                    

输出: