在javascript对象选择器中使用变量

时间:2013-11-22 04:34:55

标签: javascript jquery object

我在动态尝试基于变量检索对象行时遇到了问题。对以下情况有什么好处?

function getDetails(id) {
    completeID = "event" + id;
    title = eventDetails.completeID.title;
}

var eventDetails = {
    'event1': {
        'title': 'Lisbon Earthquake',
            'content': "Test Content",
    },
        'event2': {
        'title': 'Falling Stars',
            'content': 'Test Content'
    }
};

1 个答案:

答案 0 :(得分:2)

在您的方法中尝试此操作 -

function getDetails(id) {
    completeID = "event" + id;
    title = eventDetails[completeID].title;
}

可以使用square bracket notation来访问对象属性。

另外,在您的getDetails函数中,您声明的变量没有var关键字(除非它们已被定义为全局变量)。这会将它们创建为全局变量,以这种方式使用全局变量被认为是一种非常糟糕的做法。尝试按如下方式声明它们 -

function getDetails(id) {
    var completeID = "event" + id,
        title = eventDetails[completeID].title;

    // do whatever you want with the title
}