【发布时间】:2016-06-16 22:13:07
【问题描述】:
我定义了一些简单的对象...
var objectOne = {
settings: {
name: "object one"
}
}
var objectTwo = {
settings: {
name: "object two"
}
}
现在让我们假设我从 URL 中的参数中获得了object - 它以字符串形式出现...
var obj = "objectTwo";
如何使用obj 变量访问objectTwo.settings?
我不能执行以下操作,因为obj 是一个字符串:
var settings1 = obj.settings;
var settings2 = [obj].settings; // also doesn't work
我尝试在没有任何运气的情况下剥离引号。
如何使用字符串访问*对象?
【问题讨论】:
-
如果它在全局命名空间中,您可以使用
window[obj].settings。 -
^ 就是这样。使用字符串访问变量的唯一其他方法是使用
eval,但几乎没有充分的理由这样做。 -
我不敢相信我忘记了
window。哈。很简单。谢谢!
标签: javascript javascript-objects