我到处都读到全局变量不好,应该使用替代方法。特别是在 Javascript 中,我应该选择什么解决方案。
我正在考虑一个函数,当输入两个参数 ( function globalVariables(Variable,Value)
)时,它会查看变量是否存在于本地数组中,如果它确实将其值设置为Value
,否则Variable
并Value
附加。如果不带参数 ( function globalVariables()
)调用该函数,则它返回数组。也许如果函数只用一个参数 ( function globalVariables(Variable)
)触发,它会返回Variable
数组中的值。
你怎么认为?我想听听您使用全局变量的替代解决方案和论据。
你会如何使用 globalVariables();
function append(){
globalVariables("variable1","value1"); //globalVariables() would append variable1 to it's local array.
};
function retrieve(){
var localVariable1 = globalVariables("variable1"); //globalVariables() would return "value1".
};
function retrieveAll(){
var localVariable1 = globalVariables(); //globalVariables() would return the globalVariable()'s entire, local [persistently stored between calls] array.
};
function set(){
globalVariables("variable1","value2"); //globalVariables() would set variable1 to "value2".
};
这是单例模式BTW?
在这个特定的场景中,一个函数可能会在某个时间点设置一个变量,然后另一个函数(可能在用户提交表单时)需要获取该变量。因此第一个函数不能将变量作为参数传递给后面的函数,因为它永远不会从第一个函数中调用。
谢谢,我感谢您的所有帮助!