数组扁平化

76 阅读1分钟

1、es6新增的arr.flat

2、toString() 最后变成的都是字符串了 ,改为数字

3、JSON.Stringify

4、通过concat可以去掉一层(迭代)

5、递归

var arr = [[1, 2, 2], [3, 4, 5, 5], [6, 7, 8, 9, [11, 12, [12, 13, [14]]]], 10]
const flat = (arr) => {
    return arr.reduce((pre, item) => {
        return Array.isArray(item) ? pre.concat(...flat(item)) : pre.concat(item)
    }, [])
}

var result = flat(arr)