変数に関数の名前がありますが、すべてがクロージャー内にあります。この変数を使用して、このような関数を呼び出したい
(function(func) {
this[func]() ; // doesn't work
function bar() {}
function foo() {}
})('bar') ;
このようなことは可能ですか、たとえば、次のように関数を変数に追加する必要がありますか
(function(func) {
var ns = {
bar: function() {},
foo: function() {}
};
ns[func]() ; // OK
})('bar') ;