constdata=[{id:1,pid:0,text:1,children:[{id:2,pid:1,text:2,children:[{id:3,pid:2,text:3,children:[]}]}]}]//怎么查找id的父级的index索引id=3父级2所在数组index为0,在上父级的id1,所在数组的index0,直到最顶一层//输入id3//返回[0,0,0]索引的数组
2 回答
Qyouu
TA贡献1786条经验 获得超11个赞
constdata=[{id:1,pid:0,text:1,children:[{id:2,pid:1,text:2,children:[{id:3,pid:2,text:3,children:[]}]}]},{id:4,pid:0,text:4,children:[{id:5,pid:4,text:5,children:[{id:6,pid:5,text:6}]},{id:7,pid:4,text:7,children:[{id:8,pid:7,text:8}]}]}]functionfindIndexArray(data,id,indexArray){letarr=Array.from(indexArray)for(leti=0,len=data.length;iarr.push(i)if(data[i].id===id){returnarr}letchildren=data[i].childrenif(children&&children.length){letresult=findIndexArray(children,id,arr)if(result)returnresult}arr.pop()}returnfalse}findIndexArray(data,3,[])//[0,0,0]findIndexArray(data,8,[])//[1,1,0]findIndexArray(data,7,[])//[1,1]
添加回答
举报
0/150
提交
取消
