You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何查找JavaScript多维数组中元素13的索引?访问返回undefined

如何在多维数组中查找元素13的索引?

首先纠正你直接访问的错误:元素13的正确索引路径是myArray[3][1][0],拆解来看:

  • myArray[3]指向数组里的第四个元素(数组索引从0开始):[[10, 11, 12], [13, 14]]
  • myArray[3][1]是这个嵌套数组的第二个子数组:[13, 14]
  • myArray[3][1][0]就是这个子数组的第一个元素,也就是你要找的13

如果需要通用的查找方法(不确定元素位置时),可以用递归函数遍历多维数组,记录完整的索引路径:

function findElementIndex(arr, target) {
  for (let i = 0; i < arr.length; i++) {
    if (arr[i] === target) {
      return [i];
    } else if (Array.isArray(arr[i])) {
      const nestedPath = findElementIndex(arr[i], target);
      if (nestedPath) {
        return [i, ...nestedPath];
      }
    }
  }
  return null; // 没找到目标元素时返回null
}

// 调用示例
const indexPath = findElementIndex(myArray, 13);
console.log(indexPath); // 输出 [3, 1, 0]

这个函数的逻辑:

  • 遍历当前数组的每个元素,若匹配目标则返回当前索引
  • 若遇到子数组,递归进入子数组查找
  • 递归找到路径后,将当前层级的索引拼接到路径最前面,返回完整的索引序列
  • 遍历完所有元素仍未找到时,返回null

内容的提问来源于stack exchange,提问作者impeR

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 04:25:33