2011-11-23 43 views
0

这将是凝灰岩,因为我真的不知道如何提出正确的问题。所以,我有以下结构的对象:动态多对象属性名称在js中的问题

enter image description here

当我这样做:

console.info(myObject.StackPaneProvider)

我得到预期的结果: enter image description here

但是,如果我尝试动态访问它

var key = "StackPaneProvider"; 
console.info(myObj.key); 

(实际上关键变量是动态生成的,并且是字符串类型)我在Firebug中得到了“undefined”。为什么?

回答

4
var key = "StackPaneProvider"; 
console.info(myObj[key]); 

你想用[key]例如

myObj.StackPaneProvider === myObj["StackPaneProvider"]; 
myObj.key === myObj["key"] 
1

您是否尝试过使用MyObj中[关键]访问密钥?

+0

感谢您的快速响应! – sica07

1

正确的语法是 myObj [key]

+0

哇,快速回答,谢谢! – sica07