代码实现
function flatArray(arr: any[], level: number = 0): any[] {
let result: any[] = []
arr.forEach((item: any) => {
if (level !== 0 && Array.isArray(item)) {
result = result.concat(flatArray(item, level - 1))
} else {
result = result.concat([item])
}
})
return result
}
const flatArrayData = [1, 2, 3, [[4, 5], 6], 7, 8]
const flatArrayResult0 = flatArray(flatArrayData, 0)
const flatArrayResult1 = flatArray(flatArrayData, 1)
const flatArrayResult2 = flatArray(flatArrayData, 2)
const flatArrayResult3 = flatArray(flatArrayData)
const flatArrayResult4 = flatArray(flatArrayData, -100)
console.log('flatArrayResult0', flatArrayResult0)
console.log('flatArrayResult1', flatArrayResult1)
console.log('flatArrayResult2', flatArrayResult2)
console.log('flatArrayResult3', flatArrayResult3)
console.log('flatArrayResult4', flatArrayResult4)