プログラムを最適化しようとしています。閉鎖の基本は理解できたと思います。しかし、スコープチェーンについては混乱しています。
一般に、スコープを低くする必要があることはわかっています(変数にすばやくアクセスするため)。
次のオブジェクトがあるとします。
var my_object = (function(){
//private variables
var a_private = 0;
return{ //public
//public variables
a_public : 1,
//public methods
some_public : function(){
debugger;
alert(this.a_public);
alert(a_private);
};
};
})();
私の理解では、some_publicメソッドを使用している場合、パブリック変数よりも高速にプライベート変数にアクセスできます。これは正しいです?
私の混乱は、これのスコープレベルにあります。
コードがデバッガーで停止すると、firebugはthisキーワード内のパブリック変数を表示します。この単語はスコープレベル内にありません。
これにアクセスする速度はどれくらいですか?現在、this.propertiesを別のローカル変数として保存して、何度もアクセスしないようにしています。
どうもありがとう!