我认为我在这里遗漏了一些非常简单的东西。我想将一个对象和方法传递给函数。这篇文章的原因太长了。 :-)

var myObj = new someObject();
var funcName = "hide";

function callObject(myObj,funcName){
    obj.hide(); //this works
    obj[funcName]; //doesn't work
    obj.eval(funcName); //doesn't work either.. tried many variations
}

谢谢!

最佳答案

您需要在通话中加上括号,如下所示:

obj[funcName]();

您可以像这样工作:
eval("obj." + funcName + "()");

但是有很多理由不这样做(security, performance, harder debugging)。

10-06 10:59