:「モジュールパターンを明らかにする」で書かれたjavascriptクラスがあります:
myObject = function () {
var varA,
varB,
methodA = function (data) {
//Some code...
},
methodB = function (data) {
var that = this;
that.methodA("a"); // --> 'that' recognize only public methods: 'methodB' / 'methodC' !!!
},
methodC = function (data) {
};
return {
methodB : methodB,
methodC : methodC,
};
} ();
'methodB'内の'this'でわかるように、クラスのプライベートメソッドを認識しません。
編集: 私の意図は、パブリッククラスからヘルパープライベートメソッドを呼び出すことでした。このプライベートクラス内で「これ」が必要でした。'methodB'から直接'methodA( "a")'を呼び出す場合('that'なし)、'this'はありません('this'はグローバルコンテキストになります)。解決策は次のとおりです。
methodA.call(this, "a");