var arr=[[1,2],[3,[4,5],6]]
// 方法一 硬写
function f1(tree,res){
if(Array.isArray(tree)){
for(let i=0;i<tree.length;i++){
f1(tree[i],res)
}
}else{
res.push(tree)
}
return res
}
f1(arr,[])
//方法二 Generator函数
function *f2(tree){
if(Array.isArray(tree)){
for(let i=0;i<tree.length;i++){
yield *f2(tree[i])
}
}else{
yield tree
}
}
[...f2(arr)]
//方法三 ES6数组api
arr.flat(Infinity)
展开嵌套数组的方法
最新推荐文章于 2023-11-23 14:52:04 发布