什么是数组扁平化?
数组扁平化,听起来很高级的亚子,其实就是将多维数组转换为一维数组(降维)。
例如:
[1, 2, 3, [4, 5, 6, [7, 8 ]]]
// 转换为
[1, 2, 3, 4, 5, 6, 7, 8 ]
数组扁平化的几种方法
方法1、ES6中的 flat 方法
说起 ES6 的这个新方法,我感觉还是挺好玩的。
flat(depth) 方法中的参数depth,代表展开嵌套数组的深度,默认是1,表示展开一层。也就是说你在参数项写几,就展开几层。是不是很有趣?
flat 详细说明:点这里
flat 的基本语法:
Array.flat()
在感觉有趣的同时,又发现了一个新的问题:有时候我们不知道数组到底嵌套了几层,这该咋写呢?原来它还有把参数值设置为 Infinity
,意思是无限层。这样不管有多少层嵌套都可以轻松的把数组转为一维的数组。
具体操作代码:
let arr = [1, 2,