因为 data.length 在这两种情况下都只有 2
进一步解释:
每个对象都包含多个值,但是,您并没有要求这些对象的长度。
data.length = 获取数据中儿童的数量(不是孙子、堂兄弟、侄子和侄子)只是儿童。
在这两种情况下,无论对象是什么,数据中都有 2 个,因此长度 = 2
进一步:
这些对象是什么并不重要,哎呀,你可以有一个字符串和一个子数组,它仍然会返回 2,因为它将是我们要求长度的对象内部的 2 个对象
更新 回答提出的第二个问题
访问的原因很简单,首先,您的孩子是典型的对象,如您的示例所示:
data = [
// These two CHILDREN are Typical Objects
Object { code="6", id="1073148", key="82628835"},
Object { code="17", id="2073140", key="83628837"}
]
因此,您可以将对象 1 作为数据 [0] 访问。
但是,在您的第二个示例中,孩子是ARRAY类型对象,因此,每个孩子都可以有多个值。例如:
data = [
[Object { code="6", id="1073148", key="82628835"}],
[Object { code="17", id="2073140", key="83628837"}]
]
// Your example here has 2 children but each child is an ARRAY type Object,
// Each array has one child which is the object in each one
// thus you can call data[0][0] & data[1][0]
// Could also be
data = [
[Object { code="6", id="1073148", key="82628835"},
Object { code="17", id="2073140", key="83628837"}]
]
// in this later case, there is only one child
// this one child, like in your example, is an ARRAY, but in this later example,
// it has TWO children of its own
// thus you can call data[0][0] and data[0][1]
如您所见,您的第二个示例没有两个子对象,而是包含 2 个子数组,每个数组都包含一个子对象。因此,获取对象 1 的需要变为data[0][0]
其中 data[0] 正在获取第一个数组子对象,第二个 [0] 正在获取该数组子对象
得到它?
如果不只是让我知道!