
使用递归和 while 循环是实现此目的的更简单方法
export default function flatten(value) {
const arr = []
const flat = (a) => {
let counter = 0
console.log(a)
while (counter < a.length) {
const val = a[counter]
if (array.isarray(val)) {
return flat(val)
} else {
arr.push(val)
}
counter++
}
}
flat(value)
return arr
}
您也可以使用reduce() 和 array.concat()
export default function flatten(value) {
return value.reduce((acc, val) =>
Array.isArray(val)
? acc.concat(flatten(val))
: acc.concat(val),
[]);
}










