[英]Dealing with large amount of global variables in JavaScript
我有一个JavaScript应用程序,该应用程序使用大量的全局变量(例如,其中有数百个-这是C程序的端口,所以我不是那样写的)。 显然,在Window对象中包含这么多的变量是非常不好的做法,但是我正在努力提出一种非冗长的方法。
目前,我认为这是前进的方向:
var myApp = {};
//file1.js:
myApp.variables = (function() {
var var1, var2, var3;
var items = new exampleConstructorFunction();
var etcereta = [];
})();
//file2.js:
myApp.gameplay = (function() {
//gameplay code
})();
//file3.js:
myApp.scheduling = (function() {
//timing code
})();
但是问题是,为了从gameplay
或timing
定义的函数访问myApp.variables
任何变量,您需要将其指定为myApp.variables.var1
,这在需要使用时对可读性非常不利他们经常。 有什么建议吗?
您可以直接将当前全局变量直接存储在myApp中,也可以避免这种方法,将整个脚本包装在一个匿名函数中并执行它,例如(function() { })()
则无需为变量命名空间使它们脱离全球范围。
如果您只关心变量名的长度,是否不能只在局部作用域中定义对它的引用?
var v = myApp.variables;
我使用ASP,Windows服务器,MS SQL DB,但是这也可以在PHP,基于Linux的服务器,MySQL DB中完成。 您将需要创建一个或多个数据库,然后编写一个ASP脚本(或PHP脚本)以将变量的值存储在数据库中,然后(再次使用ASP / PHP脚本)调用/使用它们。 这不是一个简单的脚本编写任务,但是在ASP(PHP论坛)中有很多可以改编的示例。 一旦编写了脚本并将其存储在服务器端数据库中,便可以重新使用,修订。 可以容纳许多数据字段和值。 HTH
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.