使用字符串在Javascript中访问对象

时间:2010-08-19 05:10:01

标签: javascript yui

我有一个包含字符串“Y.Plugin.abcd”的变量,我想访问一个具有相同名称的对象...我正在使用YUI 3并尝试使用Y.namespace方法而没有运气。< / p>

var nm = "Y.Plugin.abcd";

Y.log(Y.Plugin.abcd); //outputs the correct object

Y.log(Y.namespace(nm)); //outputs an empty object

我几乎都在寻找任何方法,YUI或不是,以便能够在PHP中完成一个相当简单的任务。

1 个答案:

答案 0 :(得分:2)

在纯JavaScript中,您可能会split您的字符串,然后使用subscript notation,如下所示:

var nm = "Y.Plugin.abcd";
var nm_array = nm.split('.');    // split the nm string
var obj = window;                // set our reference to the global object

for (var i = 0; i < nm_array.length; i++) {
   obj = obj[nm_array[i]];       // walk through all the namespaces
}

Y.log(obj);                      // obj will hold a reference to Y.Plugin.abcd