私はJavaScriptでオブジェクト指向プログラミングを使おうとしているC#開発者です。次のコードの場合
var np = np || {};
np.Class1 = function () {
var var1,
var2,
var3;
var init = function(a) {
var1 = a;
this.var2 = a;
init3(a);
};
var init3 = function(b) {
this.var3 = b;
};
return {
init: init,
var1: var1,
var2: var2,
var3: var3
};
};
var t = new np.Class1();
t.init("t");
console.log("var1 " + t.var1);
console.log("var2 " + t.var2);
console.log("var3 " + t.var3);
私が得ている:
var1 undefined
var2 t
var3 undefined
プライベート変数にアクセスできる唯一の方法Class1
はを使用するthis.var2 = a;
ことですが、他の関数から呼び出される関数では機能しません。関数からプライベート変数にアクセスするにはどうすればよいinit3()
ですか?
編集済み
init3()
このように機能を変えても
var init3 = function(b) {
var3 = b;
};
結果は同じです。したがって、質問はまだ有効です。関数からプライベート変数を操作するにはどうすればよいですか?