【发布时间】:2014-09-03 23:25:34
【问题描述】:
我想在不同的页面上声明一个全局变量。 所以我所有的全局变量都在 data.js 上,所有的 JavaScript 函数都在 script.js 上 我可以在 JavaScript 中做到这一点,但你如何在 jQuery 中做到这一点? 当我将所有 JavaScript 代码放入
$(function() {
//JavaScript Codes
});
它不再起作用了。
这是我的代码:
【问题讨论】:
-
“在不同的页面上”是什么意思?
-
没有任何变化。 正常的 JavaScript 规则适用。(但是,请注意“onready”不会同步执行。)无论如何,什么“不起作用”?演示代码(应该包含在问题中的一个版本)似乎运行得很好。
-
只是好奇,你为什么要这么做?
-
为什么需要全局变量?污染全局命名空间是不好的做法并且不安全,因为任何人在任何时候都可以在您不知情的情况下覆盖这些变量。使用名称间距和/或模式(例如模块/显示模块模式)可能会有所帮助。如果需要,也可以选择使用本地存储或类似设备。除了污染全局命名空间之外,还有很多选择。在创建专门用于托管它们的文件之前,最好了解为什么您认为需要全局变量并查看是否可以解决问题。
标签: javascript global-variables