数据类型不变

方法

function flatAll(arr){
    while (arr.some(Array.isArray)){
        arr = [].concat(...arr)
    }
    return arr;
}

使用

let arr = [1,[2,[3,[[[[4,{}]]]]]]]
console.log(flatAll(arr))		//[1, 2, 3, 4, {}]

数据类型变字符串

方法

function flatAll(){
    return String(arr).replace(/[\[\]]/g, '').split(',');
}

使用

let arr = [1,[2,[3,[[[[4,{}]]]]]]]
console.log(flatAll(arr))		//["1", "2", "3", "4", "object Object"]

指定数组维度

JS_js任意维度降一维,多维数组降一维数组,指定数组维度-小白菜博客
在这里插入图片描述