概述
在面试中我们经常会遇到数组扁平化的问题,下面总结了三种常用的方式,其中方式2,使用join和split方法不推荐使用,因为容易出现以下问题:
- 得到的数组元素都是字符串类型的
- 扁平化对象类型的元素会出现问题
<script>
//数组的扁平化
let arr=[1,3,6,[1,3,9],[{name:'zs'},[1,3]]];
//方式01利用flat函数
let arr01=arr.flat(Infinity);
console.log(arr01);
//数组扁平化方式2
let arr02=arr.join().split(',');
console.log(arr02);
//数组扁平化方式03利用递归函数
//声明一个函数
function getFlat(arr){
//声明一个空数组存放扁平化后的数组元素
let temp=[];
//遍历数组
for(let i=0;i<arr.length;i++){
//判断数组内部元素是否还是个数组,如果是就调用函数使其扁平化
if(arr[i] instanceof Array){
temp=temp.concat(getFlat(arr[i]))
}else{
//如果不是数组,就直接push
temp.push(arr[i])
}
}
return temp;
}
</script>
最后
以上就是义气发带为你收集整理的js中数组扁平化的方式的全部内容,希望文章能够帮你解决js中数组扁平化的方式所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复