使用JS写一个方法计算嵌套数组的深度

你可以使用递归函数来计算嵌套数组的深度。以下是一个使用JavaScript编写的示例方法,用于计算嵌套数组的深度:

function getArrayDepth(arr) {
  if (!Array.isArray(arr)) {
    return 0; // 如果不是数组,返回深度0
  }

  let maxDepth = 0;
  for (let i = 0; i < arr.length; i++) {
    const depth = getArrayDepth(arr[i]); // 递归计算每个元素的深度
    maxDepth = Math.max(maxDepth, depth); // 更新最大深度
  }

  return maxDepth + 1; // 返回当前深度(最大深度+1)
}

// 示例用法:
const nestedArray = [1, [2, [3, [4]], 5], [6, 7]];
const depth = getArrayDepth(nestedArray);
console.log(`嵌套数组的深度为:${depth}`); // 输出:嵌套数组的深度为:4

在这个示例中,getArrayDepth函数接受一个数组作为参数。它首先检查参数是否为数组,如果不是,则返回深度0。然后,它遍历数组的每个元素,并递归地调用自身来计算每个元素的深度。在每次递归调用后,它使用Math.max函数更新当前的最大深度。最后,它返回当前深度,即最大深度加1。

posted @   王铁柱6  阅读(11)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具
点击右上角即可分享
微信分享提示