JS 数组对象的深度

 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

 

上一篇:q


下一篇:前端开发技术之JavaScript运算符的使用技巧