可能重复: 如何避免 JavaScript 中的全局变量?
我正在寻找一些关于如何最好地在 JavaScript 中管理全局变量的建议。
考虑以下:
foo = 1;
bar = 2;
// Update our global variable
function doStuff (newFooValue) {
foo = newFooValue
}
// Update a global based on a condition
function doMoreStuff () {
if (bar == 3) {
foo = 1;
}
}
在这两种情况下,我们的函数都在内部访问全局变量,这让我觉得很难看。根据我的阅读,我们希望尽可能避免使用全局变量,以避免阻塞全局名称空间。
那么为我们的全局变量创建一个我们所需要的结构吗?
例如,
var myPage = {}
myPage.foo = 1;
myPage.bar = 2;
我想这解决了全局命名空间冲突问题,但我仍然从我的方法中访问全局范围。
我应该怎么办?