Javascript 数组访问的可读性

Javascript 数组访问的可读性,javascript,arrays,readability,Javascript,Arrays,Readability,因此,我目前正在编写一个javascript游戏(使用javascript)。目前,对于清单页面上的建筑物,我将它们的数量存储在一个名为“建筑物”的数组中,每个索引对应于一个特定的建筑物。然后,当我需要某个建筑物的拥有量时,我使用类似于建筑物[0]的东西 问题是,这很难理解!建筑物[0]并没有真正告诉查看代码的人它到底是什么。我想知道是否有任何方法可以让这更容易理解?JavaScript有对象: var myCar = new Object(); myCar.make = "Ford"; myC

因此,我目前正在编写一个javascript游戏(使用javascript)。目前,对于清单页面上的建筑物,我将它们的数量存储在一个名为“建筑物”的数组中,每个索引对应于一个特定的建筑物。然后,当我需要某个建筑物的拥有量时,我使用类似于建筑物[0]的东西


问题是,这很难理解!建筑物[0]并没有真正告诉查看代码的人它到底是什么。我想知道是否有任何方法可以让这更容易理解?

JavaScript有对象:

var myCar = new Object();
myCar.make = "Ford";
myCar.model = "Mustang";
myCar.year = 1969;
上面的例子来自

在您的情况中有一个例子:

var buildings = {
    "John's House": {
        floors: 2,
        resource: "brick"
    },
    "Alice's House": {
        floors: 1,
        resource: "wood"
    }
};
然后,可以使用以下方法提取对象值:

buildings["John's House"].floors; // 2
甚至在它们之间循环:

for (var key in buildings) {
    var building = buildings[key];
    console.log(building.resource);
}

你的意思是像一个相当于

然后,您可以使用以下内容:

var building_selected = player.buildingTypes.deriv1;

JavaScript有对象(键/值对)。您已经在代码中使用了它们,那么为什么不在
建筑中也使用它们呢?那么,我应该删除阵列吗?数组结构在缩短代码方面真的很有帮助。我想这实际上不是正确的表达方式。数组允许我将所有“buy building”函数压缩为一个函数,并将与该建筑对应的索引传递给该函数。
var building_selected = player.buildingTypes.deriv1;