SOURCE

// 数组扁平化

// 递归
const flat = (arr) => {
    let res = []
    arr.map(item => {
        res = res.concat(Array.isArray(item) ? flat(item) : item)
    })
    return res
}

// 栈
// const flat = (arr) => {
//     let res = [], stack = []
//     stack.push(arr) 
//     while(stack.length){
//         const arr = stack.pop()
//         arr.forEach(val => {
//             if(Array.isArray(val)){
//                 stack.push(val)
//             }else{
//                 res.push(val)
//             }
//         })
//     }
//     return res
// }

// reduce + 递归
// const flat = (arr) => {
//     return arr.reduce((acc, curr) => {
//         return acc.concat(Array.isArray(curr) ? flat(curr) : curr)
//     }, [])
// }

console.log(flat([1, 2, [3, [4, 5, 6]]]))
console 命令行工具 X clear

                    
>
console