> 美食
实现数组扁平化的6种方式是什么(实现数组扁平化的6种方式有哪些)
导语:实现数组扁平化的6种方式
引言
数组扁平化在一些多维数组的应用场景中会出现,那么思考两个问题,怎样用最普通的方法解决数组扁平化的问题?ES6中是否有一些高级的方法能够直接实现?
扁平化的实现
数组的扁平化其实就是将一个嵌套多层的数组array(嵌套可以是任何层数)转换为只有一层的数组。
方法一:普通的递归实现
通过循环递归的方式,一项一项地去遍历,如果每一项还是一个数组,那么就继续往下遍历,利用递归程序的方法,来实现数组的每一项的连接。
方法二:利用reduce函数迭代
方法二的思路和方法一基本是一样的,但是简化了方法一的代码,使其看起来更加清爽。
方法三:扩展运算符实现
采用了扩展运算符和some的方法,两者共同使用,达到数组扁平化的目的。
方法四:split 和 toString 共同处理
方法五:调用 ES6 中的 flat
方法六:正则和 JSON 方法共同处理
总结
前三种实现数组扁平化的方式是最基本的思路,都是通过最普通递归思路衍生的方法,其中reduce方法提供的几个参数比较灵活,能解决很多问题。后两种方法是ES6中比较常用的。
本文内容由快快网络小茹整理编辑!