多维数组转一维(以前碰到的面试题)

原创 牛粪 随笔 js 290阅读 2018-03-02 18:11:23 举报

方法一:递归
let arr = [1,[2,[[3,4],5],6]];
let newArr = [];
function arrFn(arr){
for(let i = 0; i < arr.length; i ++){
if(arr[i] instanceof Array){
arrFn(arr[i]);
}else{
newArr.push(arr[i]);
}
}
};
arrFn(arr);
console.log(newArr); //[1,2,3,4,5,6]

方法二:先将数组转换成字符串,然后再分割成数组
let arr = [1,[2,[[3,4],5],6]];
let arr1 = arr.join().split(",")
console.log(arr1);//["1", "2", "3", "4", "5", "6"]

let arr2 = arr.toString().split(',');
console.log(arr2);//["1", "2", "3", "4", "5", "6"]
评论 ( 3 )
最新评论
zxsclq 2F 2018-03-12 09:34:31 3F

除了处女座,其他都还好!

牛粪 1F 2018-03-09 17:23:00 2F

本来是有缩进的。传上去就成这样了。缩进因该不会影响多少吧

zxsclq 2018-03-09 11:08:39 1F

哥哥,你这个上代码能不能改改格式啊,看的无比蛋疼