如果我在变量中有名称,我如何引用JavaScript对象?

时间:2011-05-05 02:53:26

标签: javascript

我在页面上有几个对象...我知道其中一个对象的名称,它存储在一个名为editorId的变量中。如何访问该对象的方法? editorId.someFunction()不起作用,因为变量的值是对象的名称。

3 个答案:

答案 0 :(得分:6)

如果它是一个全局变量,你可以var editor = window[editorID];

如果是本地的,您可以var editor = (new Function('return ' + editorID))();

然后你可以做editor.blah();

答案 1 :(得分:0)

如果您在页面上引用HTML元素,则可以使用:

document.getElementById(editorId);

如果您指的是JavaScript对象的名称,可以尝试eval(),这不是非常有效:

var obj = eval(editorId);
// obj.someFunction()

答案 2 :(得分:0)

使用document.getElementsByName(editorId)。或者,如果您的名字实际上是ID,请使用getElementById()

http://www.w3schools.com/jsref/met_doc_getelementsbyname.asp