扁平化多维数组

2023-03-04 17:12:01 浏览数 (1)

本文最后更新于 128 天前,其中的信息可能已经有所发展或是发生改变。

将下面的多维数组打开,输出去重后的结果(扁平化数组)

代码语言:javascript复制
function fn(array, result = []) {
    for (let i of array) {
        if (Array.isArray(i)) {
            fn(i, result)
        } else {
            result.push(i)
        }
    }
    return result
}
let s = fn([1, 2, 3, [1, 2, 2, 3, [4, 5, 6]]])
console.log([...new Set(s)]);

使用递归实现。将需要转化的数组以及结果作为参数传进去。然后循环数组中的每一项,判断是不是一个数组,如果是,则调用fn,否则将这项push到result数组里面,并return出来。

0 人点赞