现在我们有一个多维数组,我们想得到该数组的层深,即最大维度

如:var arr = [1, [4,[5,6,[7]]], [2,3]] = 0;返回4;那么我们该怎么做呢?

核心思想:递归,循环遍历

// 这里传入两个参数
// 参数一为数组
// 参数二为初始数组的层深
function fo(arr,len){
    var flag = false;
    var arr1 = [];
    for(var i=0; i<arr.length; i++){
        if(!!arr[i].length){
            for(var j=0; j<arr[i].length; j++){
                arr1.push(arr[i][j]);
            }
            flag = true;
        }
    }
if(flag){ len++;
  
return fo(arr1,len) }else{ return len; } } //初始数组层深为1; var len = fo(arr,1) console.log(len); //4

 

相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-08-20
  • 2021-07-10
  • 2021-06-18
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-07-06
  • 2021-12-19
  • 2021-06-20
  • 2021-08-08
  • 2021-05-15
相关资源
相似解决方案