Я пытаюсь оптимизировать свою программу. Я думаю, что я понимаю основы закрытия. Я запутался в цепи прицелов.
Я знаю, что в целом вы хотите ограниченную область (для быстрого доступа к переменным).
Скажем, у меня есть следующий объект:
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, я могу получить доступ к приватным переменным быстрее, чем к публичным. Это правильно?
Моя путаница связана с уровнем охвата this .
Когда код останавливается в отладчике, firebug показывает открытую переменную внутри ключевого слова this . Слово this не находится на уровне области действия.
Как быстро это происходит? Сейчас я храню любые this.properties как другую локальную переменную, чтобы избежать многократного обращения к ней.
Большое спасибо!