用于填充javascript关联数组的高效语法

时间:2010-09-30 13:51:42

标签: javascript arrays associative-array

我有一个自动填充文本框,用户可以在其中键入项目代码,并需要找出该项目代码的id号在javascript中。

关联数组是我想象它应该完成的方式,但以下似乎有点长篇大论,我希望有人有更好的方法来做或简写下面的内容:

var itemIds = new Array();
itemIds["item1"] = 15;
itemIds["item2"] = 40;
itemIds["item3"] = 72;
...

function getItemId(code){
    return itemIds[code];
}

2 个答案:

答案 0 :(得分:23)

你所做的不是一个数组 - 它是一个对象(JavaScript中的对象是PHP中关联数组的等价物。)

您可以使用JavaScript对象文字语法:

var itemIds = {
    item1: 15,
    item2: 40,
    item3: 72
};

JavaScript对象成员可以通过点表示法或数组下标来访问,如下所示:

itemIds.item1;
itemIds['item1'];

如果您将成员名称作为字符串,则需要使用第二个选项。

答案 1 :(得分:2)

尝试使用Object Literal表示法来指定您的查找:

var itemIds = {
    "item1" : 15,
    "item2" : 40
    ...
};

访问仍然应该像这样:

var item1Value = itemIds["item1"];