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

咨询JavaScript嵌套数组中元素13、14的正确访问方式

嵌套数组元素访问解析

先看你提供的数组代码:

const arr = [
  [1, 2, 3],
  [4, 5, 6],
  [7, 8, 9],
  [[10, 11, 12], 13, 14]
];

数组层级拆解

这个数组是多层嵌套结构,我们按索引从0开始逐层拆解:

  • 最外层arr有4个元素,索引0到3:
    • arr[0] = [1, 2, 3](第一层子数组)
    • arr[1] = [4, 5, 6](第一层子数组)
    • arr[2] = [7, 8, 9](第一层子数组)
    • arr[3] = [[10, 11, 12], 13, 14](第一层子数组,内部又嵌套了数组和数值)
  • 再看arr[3]这个子数组,它也有3个元素,索引0到2:
    • arr[3][0] = [10, 11, 12](第二层子数组)
    • arr[3][1] = 13(直接是数值,不是数组)
    • arr[3][2] = 14(直接是数值,不是数组)

13和14的正确访问方式

  • 访问值13:arr[3][1]
  • 访问值14:arr[3][2]

为什么不需要arr[3][1][0]?

你提到的arr[3][1][0]是错误的,因为arr[3][1]本身就是数值13,不是数组。只有当元素是数组时,才能继续用索引访问下一层。如果对非数组元素加索引,会抛出TypeError: Cannot read properties of undefined (reading '0')之类的错误。

数组核心工作原理

  • 数组的索引从0开始计数,每个位置可以存放任意类型的数据(包括数组、对象、数值、字符串等)
  • 嵌套数组就是“数组里装数组”的结构,访问嵌套元素时,需要逐层用索引定位:先找最外层数组的目标元素索引,再找该元素(如果是数组)的下一层索引,直到找到最终的目标值
  • 如果某一层的元素不是数组,就不能继续使用索引访问,否则会报错

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 21:43:18