常见前端面试题06

数组扁平化

Arrary.prototype.flat()

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20201012145226978.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjQ5ODEwMg==,size_16,color_FFFFFF,t_70#pic_center)
传入的参数是,去除一维数组内部的维数。即传入2就是去除数组中的两维数组

toString()方法

在这里插入图片描述
把数组直接转变为字符串即可,数组toString()之后不管有多少级,最后都会变为以逗号分隔的字符串,没有中括号和所谓的层级,相当于扁平化。然后加上中括号转化为数组即可。

JSON.stringify()然后正则

在这里插入图片描述
先把多维的数组转化成json字符串形式,然后利用正则吧中括号替换成正则。

利用循环来展开

利用concat来合并数组

在这里插入图片描述
数组的soem方法,其中有一个符合条件,就会返回true,然后利用cancat可以展开一层数组。

利用递归来实现

![在这里插入图片描述]( https://img-blog.csdnimg.cn/20201012150638684.png?x-oss-process=image/watermark ,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3dlaXhpbl80NjQ5ODEwMg==,size_16,color_FFFFFF,t_70#pic_center)

posted @ 2020-10-12 15:08  jacksonni  阅读(123)  评论(0)    收藏  举报