从Javascript访问2d数组

从Javascript访问2d数组,javascript,arrays,matrix,Javascript,Arrays,Matrix,我有一个2d数组,其中存储有关NPC的数据: // id is just NPC number NPC[id][x] = ; // here is stored the x coordinate NPC[id][y] = ; // here is stored the y coordinate 还有关于NPC矩阵中存储的NPC的其他数据,我想访问它们,但我不知道我想更改的NPC的id。我只知道他的x和y坐标。我怎样才能找到他的身份证 另外,我是一个noob,我知道这种管理NPC的方法是蹩脚和糟

我有一个2d数组,其中存储有关NPC的数据:

// id is just NPC number
NPC[id][x] = ; // here is stored the x coordinate
NPC[id][y] = ; // here is stored the y coordinate
还有关于NPC矩阵中存储的NPC的其他数据,我想访问它们,但我不知道我想更改的NPC的id。我只知道他的x和y坐标。我怎样才能找到他的身份证


另外,我是一个noob,我知道这种管理NPC的方法是蹩脚和糟糕的编程,但现在改变它已经太迟了。

如果你不知道外部标记,你必须循环数组中的每个元素,将它们的x/y坐标值与给定坐标值进行比较,然后在找到匹配时返回ID,或者,如果你在没有找到匹配项的情况下到达了终点,就可以使用一些sentinel值。

旁注:javascript(或任何松散类型的语言)中没有2d数组这样的东西。它只是一个数组,恰好在每个标记上都包含一个数组。问题完全不清楚。什么是
x
y
?它们是财产吗?所以你有
NPC[id][“x”]=4其中
4
是字符的x?否则,如果它们是“数字”,它们是实际坐标吗?“x”中存储了什么?同样的价值<代码>NPC[id][4]=4
?请更好地解释这个场景。另外,请记住,如果要基于x/y坐标检索字符,最好使用如下数组:
maps[x][y]=idNPC