ちょっと遊んで調べてみたのですが、これがわかりません。JavaScript オブジェクト内に、eval を介して呼び出す必要がある疑似プライベート関数があります (関数の名前が動的に構築されるため)。ただし、関数はクロージャーによってグローバルスコープから隠されているため、eval() を使用して関数を参照する方法がわかりません。
元:
var myObject = function(){
var privateFunctionNeedsToBeCalled = function() {
alert('gets here');
};
return {
publicFunction: function(firstPart, SecondPart) {
var functionCallString = firstPart + secondPart + '()';
eval(functionCallString);
}
}
}();
myObject.publicFunction('privateFunctionNeeds', 'ToBeCalled');
例がばかげているように見えることはわかっていますが、単純にしたかったのです。何か案は?