2010-09-02 62 views
5

我试图在Javascript中复制PHP(以及大多数语言)的“功能”。使用字符串引用对象名称

这在PHP:

$objectName = 'ObjectA'; 

$someObject->$objectName->someMethod(); 

基本上使用字符串变量表示一个对象的变量。

所以在Javascript中,我希望做一些事情,如:

var objectName = "ObjectA"; 

someObject.[objectName].someMethod(); 

任何人都知道如何做到这一点?或者如果它甚至可能?

回答

14

你几乎拥有它,只是删除了第一.,像这样:

var objectName = "ObjectA"; 
someObject[objectName].someMethod(); 

如果您想寻找解决此更多的信息,这就是所谓的bracket notation

+0

Gah。我是一个该死的角色了。我不知道它叫什么,或者我会使用Google搜索括号符号。 非常感谢! – Charlie 2010-09-02 23:43:49

+0

这不能超越深度。如果你有一个像“Object.a.attribute.val”的字符串,你不能将[str]的最后一个属性作为对象。如何实现这一目标? – 2015-09-02 08:07:13