首页 > 解决方案 > Javascript:如何调用数组数组中的不同对象?

问题描述

我试图了解如何从下面的代码中提取特定项目。

var snake = [[{x : 20, y : 30}],[{x : 40, y: 50}]];

来自 python,我发现这在处理 for 循环以将我的所有对象都放在数组中的数组中时很有用。

例如,我想x:从第一个对象容器中提取第一个值。我以为snake[0][0].x会回来20,而且snake[1][1].y会回来50。但相反,我收到:Uncaught TypeError: Cannot read property 'x' of undefined

var snake = [[{x : 20, y : 30}],[{x : 40, y: 50}]];
snake[0][0].x;
snake[1][1].y;

我是 JavaScript 新手,试图理解为什么这不起作用,以及是否有办法编写它以便它可能。提前谢谢你的帮助。

标签: javascriptarrays

解决方案


您遇到的问题是您的第二个陈述,snake[1][1].

第二个对象将被引用snake[1][0]

第一个索引指的是最外层数组中的位置,每个后续索引指的是数组的下一个内部级别。由于每个内部数组只有一个值(其中的对象),因此 0 以外的任何索引都将返回未定义的错误。

您可以使用 来验证这一点snake[1][0].y,它会返回 50,正如您所期望的那样。


推荐阅读