私は2つの理由から、Javascriptでオブジェクト指向のアプローチを取っています。1つは学習に役立つため、2つはコードを配布する場合に備えてです。
私はすでに変数に関数を割り当てthis
、パブリック変数に使用しています。this
ただし、使用中に問題が発生しています。「プライベート」関数を使用しているときにthis
、別のスコープを参照し、の下の変数にアクセスできませんthis
。私のポイントを説明します。
var ClassObject = function() {
this.var1 = 'Hello';
var var2 = 786;
this.func1 = function() {
alert(this.var1); // Alerts Hello
alert(var2); // Alerts 786
}
var func2 = function() {
alert(this.var1); // Alerts undefined
alert(var2); // Alerts 786
}
}
func2
アクセスを許可する唯一の方法はthis.var1
、別の変数をthis
:に割り当てることvar c = this
でした。これは、このタスクを実行するための最良の方法ですか、それとも広く受け入れられますか?誰かがより良い解決策を提供できますか?
皆さん、ありがとうございました。