当前位置: 首页 > Web前端 > HTML

js获取数组中的最大深度

时间:2023-03-28 17:24:55 HTML

//获取列的最大深度functiongetArrMaxDeep(arr,childKey){letdeepArr=newArray(arr.length).fill(0);functiongetDeep(data,i,deepArr){//获取当前节点的子数组,并打印当前节点的值vartreeRoot=data[childKey];//如果当前节点没有子数组(没有子节点),则跳出当前递归,并使计数器+1,并将计数器i的值存入深度数组中if(!treeRoot){我++;deepArr.push(i);返回;}//如果当前节点有子数组,需要使计数器+1i++;//通过for循环找出每条路径,对遍历的节点使用递归for(letj=0;j{letmomArr=[];getDeep(e,0,momArr);deepArr[endex]=Math.max(...momArr);});返回Math.max(...deepArr);}varcolumns=[{title:"key1",dataIndex:"key1",width:100},{title:"key2",showKey:"key2",children:[{title:"key21"},{title:"key22"},{title:"key23"},{title:"key24"},{title:"key25"},{title:"key26"}]}];varmaxDeep=getArrMaxDeep(columns,"children");console.log(maxDeep);参考文章:https://blog.csdn.net/Lucky_Q...