参考博客:http://www.cnblogs.com/haoxl/p/6818657.html
法一:将数组转为字符串再转为数组,缺点是数组中每项成字符串了
var arr = [1,[2,[[3,4],5],6]]; var arr2 = arr.join(',').split(','); console.log(arr2);//["1", "2", "3", "4", "5", "6"] //或
var c=[1,3,4,5,[6,[0,1,5],9],[2,5,[1,5]],[5]]; console.log(c.toString().split(','))
法二:递归
var arr = [1,[2,[[3,4],5],6]]; var newArr = []; function fun(arr){ for(var i=0;i<arr.length;i++){ if(Array.isArray(arr[i])){ fun(arr[i]); }else{ newArr.push(arr[i]); } } } fun(arr); console.log(newArr);//[1, 2, 3, 4, 5, 6]