为了账号安全,请及时绑定邮箱和手机立即绑定

js 多层嵌套的数组,取出最后一层的数据?

js 多层嵌套的数组,取出最后一层的数据?

慕婉清6462132 2019-05-22 17:49:51
需要获取到isCheck=true的所有id的集合list:[{id:'1',isCheck:false,children:[{id:'1-1',isCheck:false,children:null},{id:'1-2',isCheck:true,children:null}]},{id:'2',isCheck:false,children:[{id:'2-1',isCheck:true,children:null}]},{id:'3',isCheck:true,children:null}]想到用递归算法,把数组扁平化降级,可是获取到的数据不对,希望获取到数据为['1-2','2-1','3']steamroller:function(arr){letnewArr=[]letflat=function(item){for(vari=0;i
查看完整描述

2 回答

?
慕容森

TA贡献1853条经验 获得超18个赞

constresult=[],
getId=arr=>{
arr.forEach(v=>{
v.isCheck&&result.push(v.id);
if(v.childreninstanceofArray){
getId(v.children)
}
});
}
getId(list);
console.log(result)//["1-2","2-1","3"]
递归一下
                            
查看完整回答
反对 回复 2019-05-22
  • 2 回答
  • 0 关注
  • 2305 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信