聊聊吧,数组扁平化

779 阅读1分钟


emmm...努力学习中,等待秋招,期待某大厂的offer[捂脸],前几天同班一哥们面了下猫眼,其中有关于数组扁平化的一道题,这不这些天也忙着写写算法(面试必考啊[emoj]),就整理了一下。

扁平化

    数组的扁平化,就是将一个嵌套多层的数组 array (嵌套可以是任何层数)转换为只有一层的    数组。比如 [1, [2, [3, 4]]] => [1, 2, 3, 4] 

    下面给大家介绍一下数组扁平化的几种简单方法

递归


toString


   toString 方法,原理非常简单,将其变为字符串,再通过split变为数组,再转换为Number类型不就实现了数组扁平化吗,是不是很简单。

es6扩展运算符


  • reduce方法

   

数组reduce方法里面有一个回调函数pre是每次回调后的结果,初始值为[],current为当前元素,其实跟方法1是一样的,这种更简洁

到这里差不多也写完了,emmm... 大家如果有更好的意见评论区见~