Javascript 在一个全局数组中包含数千个对象是否可行?

Javascript 在一个全局数组中包含数千个对象是否可行?,javascript,global-variables,code-organization,Javascript,Global Variables,Code Organization,假设我在JS中有一个名为App的全局数组 var App = {}; 现在,我们构建了几十个表单。每个表单可以有几十个对象(按钮、网格、面板、标签等) 此外,我们的应用程序具有不同的作用域,如工作订单、租赁等 那么,假设我可以保持一切清洁,比如: var App = {}; App.Leases = {}; App.WorkOrders = {}; App.Leases.myGrid = Ext.grid.GridPanel({}); App.Leases.btnNewButton = Ex

假设我在JS中有一个名为
App
的全局数组

var App = {};
现在,我们构建了几十个表单。每个表单可以有几十个对象(按钮、网格、面板、标签等)

此外,我们的应用程序具有不同的作用域,如
工作订单、租赁等

那么,假设我可以保持一切清洁,比如:

var App = {};
App.Leases = {};
App.WorkOrders = {};

App.Leases.myGrid = Ext.grid.GridPanel({});
App.Leases.btnNewButton = Ext.Button({});

App.WorkOrders.searchGrid = Ext.grid.GridPanel({});
这是不是太过分了?我正在启动一个新的应用程序,它将变得相当大,我们正在寻找新的方法来保持事情的有序性(与以前的项目相比)


您对这种技术有何看法?

据我所知,这非常适合跟踪数据,并使内容井然有序

当您计算复杂的体系结构时,您应该关注的是对DOM的影响,因为这会减慢页面呈现和交互(特别是与旧浏览器的交互)。请记住,声明一个全局变量App={};将在窗口对象树中创建新项

正如我所说,我将考虑三个要点:

    < L> > P>只在需要时存储数据,而不控制引用(再次从我的理解中没有存储控制引用的点……如果仍然需要跟踪,则应该考虑存储控制ID)

  • 使用此全局模式存储控件的风险可能会以内存泄漏结束,因为。。。所以,帮自己一个忙,在这样做之前要三思而后行

  • 不要加载可能不会被使用的东西,而是更喜欢延迟加载。。。意思是按需加载内容一次,然后缓存加载的数据(如果需要)

在开发过程中,您应该先看一看,以免在最后出现大的惊喜:)

希望这有帮助