var objectliteral = {
    func1:fn(){},
    func2:fn(){},
    .................
    funcn:fn(){}
}

我知道我可以使用点表示法从该对象文字中调用方法:
objectliteral.func1();

但是我想使用这样的数组符号来做到这一点:
objectliteral[func1]. .... something something......

我怎么做?我知道我可以使用apply或call方法-但我仍然不太了解它们的工作方式。

我可以这样做吗?:
objectliteral[func1].apply();

解决方案

根据答案:
objectliteral['func1']()

我所需要的。
谢谢你们。

最佳答案

不,这样做:

objectliteral['func1']();

您还可以使用动态名称:
var myfuncname='func1';
objectliteral[myfuncname]();

10-02 14:42