最近被递归折磨了,但是做什么都喜欢用递归了,希望越用就越了解。
目标代码
let arr = [[1, 2, 3], 2, 3, [2, 3, 4], [33, [44]]]
target => [1, 2, 3, 2, 3, 2, 3, 4, 33, 44]
首先对 arr 进行遍历, 如果是对象类型,就再进行遍历,如果不是就push
// 数组扁平化
let arr = [[1, 2, 3], 2, 3, [2, 3, 4], [33, [44]]]
let targetArr= []
let flatt = (arr, targetArr) => {
arr.forEach(v => {
if (typeof v === "object" && v !== null) {
flatt(v,targetArr)
} else {
targetArr.push(v)
}
})
return targetArr
}
console.log('flatt(arr, resArr)', flatt(arr, targetArr));