0

所以我已经看到了几种方法,但它们似乎不适用于我想要做的事情......

我正在将此推送用于另一段代码,但我不明白为什么它也不适用于有问题的代码。

var npc = new Array();

npc.push([  
[5,25,10],
]);

npc.push([  
[18,28,38],
]);

npc.push([  
[1,2,3],
]);

我想设置它,这样我就可以调用类似...

LoadNpc(2);

我希望它检查第二个 npc 数组并将 3 个数字设置为变量..

hp = 18;
atk = 28;
def = 38;
id = 2;  //current loaded npc's id

我确定我一直在考虑如何做到这一点,但我无法让任何东西正常工作。如果有人对此有一个简单的javascript,我将非常感激。

4

2 回答 2

3

您应该使用对象数组而不是数组数组。

npc[2] = {hp :18, atk: 28, def :38} 

你“拉”这样的值:

alert(npc[2].atk);
alert(npc[2].hp);
...
于 2013-01-23T02:43:58.220 回答
0

这看起来很简单:

var npc = [];
npc.push([5,25,10]);
npc.push([18,28,38]);
npc.push([1,2,3]);

var hp, atk, def, id;

function loadNpc(index){
    id = index;
    hp = npc[index-1][0];
    atk = npc[index-1][1];
    def = npc[index-1][2];
}
于 2013-01-23T02:50:13.653 回答