JS数组扁平处理

194 阅读1分钟

定义一个数组

const arr = [1, [2, [3, [4, 5]]], 6, [7, 8, 9]];

1.使用数组flat()方法处理

const res = arr.flat(Infinity)

2.使用正则处理

const res2 = JSON.stringify(arr).replace(/\[|\]/g, '').split(',')

3.使用reduce处理

        return arr.reduce((pre, cur) =>{
            return pre.concat(Array.isArray(cur) ? res4(cur) :cur)
        },[])
 }

4.使用函数递归

    const fn = arr =>{
        for ( let i in arr){
            if (Array.isArray(arr[i])){
                fn(arr[i])
            }else{
                res5.push(arr[i])
            }
        }
    }
    fn(arr)