1

如果我有这样的 javascript 对象...

window.object = 
{
    "Element1" :
    {
        "startDate" : "-1m",
        "endDate" : "0d"
    }
};

我可以使用下面的代码来提醒-1m ...

alert(object.Element1.startDate);

但是,如果 Element1 通过参数作为字符串提供给我怎么办。如果我必须使用变量,我怎么能得到相同的结果?像这样,但不正确...

var elementId = this.id;
alert(object.elementId.startDate);
4

2 回答 2

5

试试这个:

object[elementId].startDate

或者如果id是一个数字,这将起作用:

object["Element"+elementId].startDate
于 2013-09-09T19:12:00.210 回答
1

您可以使用全局对象this

var Element1 = 'boo';

var stringname = 'Element1';
alert(this[stringname]);

第二种,hacky,方法是 javascript 可以打印 javascript,并且打印的 javascript 也将被解释。

于 2013-09-09T19:26:05.327 回答