1 let arr = [ 2 {a:1,children:[ 3 {b:1,children:[ 4 {c:1,children:[ 5 {e:1} 6 ]} 7 ]} 8 ]} 9 // {a:1,children:[ 10 // {b:1} 11 // ]} 12 ];
getArrayDepth(val,k) { if(Array.isArray(val)){ k += 1; val.map(item=>{ if(item.children){ if(Array.isArray(item.children)){ this.getArrayDepth(item.children,k) } }else{ this.count = k; } }) return this.count; }else{ return 0; } },
使用的是vue,所以需要在data里定义一个count;然后
1 console.log("shendu: ",this.getArrayDepth(arr,0));//4