- 使用递归函数封装转换
function toArr(arr, resArr = []) {
arr.forEach(v => {
if (Array.isArray(v)) {
toArr(v, resArr);
} else resArr.push(v);
});
return resArr;
}
let arr = [1, [2, [3, [4, [5]]]]];
let resArr = toArr(arr);
console.log(resArr);
- 使用数组的
toString
方法
let arr = [1, [2, [3, [4, [5]]]]];
let resArr = arr.toString().split(',');
console.log(resArr);
- 使用数组的
flat
方法
- 语法:
数组.flat(数值)
- 作用:传入数值参数n,表示拍平n层
- 如果传入
Infinity
,则表示无论多少层都拍平至一维数组
let arr = [1, [2, [3, [4, [5]]]]];
let resArr = arr.flat(Infinity);
console.log(resArr);