Инкапсуляция JavaScript / JQuery - PullRequest
0 голосов
/ 01 мая 2010

Я пытаюсь выяснить, как сохранить переменные моей страницы в моем приложении от глобальных определений.Я придумала несколько методов, но мне интересно, есть ли общепринятый подход, который используют люди.

У меня есть шаблон проектирования плагинов с использованием этого подхода: http://www.virgentech.com/blog/2009/10/building-object-oriented-jquery-plugin.html. Но яЯ просто не уверен, как справиться с инкапсуляцией на уровне моей страницы.

Ответы [ 2 ]

3 голосов
/ 01 мая 2010

Обычно это достигается следующим образом:

(function(){

    var myLocal = "I'm local!";

    window.myGlobal = "I'm global!";

})();
0 голосов
/ 01 мая 2010

У Винсента самый водостойкий подход (оберните все в функцию).

Другая вещь, которую делают люди, - это определение глобального объекта, который более или менее работает как пространство имен для вашего пакета.

window.ChrisPkg = {
   global1: ['a','b','c'],
   global2: 42
   globalfunc: function () { alert('hello world!'); }
}

ChrisPkg.extraGlobal = 'foo';
...