Я бы предложил создать переменную пространства имен var App = {};
App.myGrid = ...
Таким образом, вы можете ограничить загрязнение глобального пространства имен.
РЕДАКТИРОВАТЬ: Относительно количества переменных проблема - на ум приходит 2 возможных решения:
- Вы можете далее именовать их по типу (сетки, кнопки и т. Д.) Или по связи (ClientInfoSection, AddressSection и т. Д.)
- Вы инкапсулируете свои методы в объектах, которые создаются с помощью имеющихся у вас компонентов
например: у вас есть
function foo() {
myCombo.someMethod();
myGrid.someMethod();
}
становится:
var Foo = function(combo, grid) {
var myCombo = combo;//will be a private property
this.myGrid = grid;//will be a public property
this.foo = function() {//public method
myCombo.someMethod();
myGrid.someMethod();
}
}
App.myFoo = new Foo(someCombo, someGrid);
App.myFoo.foo();
таким образом вы ограничиваете количество маленьких объектов и выставляете только то, что вам нужно (а именно, функцию foo)
PS: если вам нужно выставить внутренние компоненты, добавьте их в функцию конструктора