我很久以前就开始了一个项目。它变得很大,所以我分成了模块。我为每个人设计了不同的js文件,但现在我意识到我已经使用了dublicate全局变量。是否有任何工具可以扫描我的脚本并提醒同意者?
答案 0 :(得分:0)
扫描?不是,我知道。
解决这个问题的好方法是使用命名空间和闭包来隐藏变量,并最大限度地减少对全局变量的依赖。
quuxModule = (function() {
var foovar = 3;
var barvar = 5;
function foo() {
return foovar;
}
function bar() {
return barvar;
}
return {
bar: bar,
barvar: barvar
}
})();
quuxModule.barvar; // 5
quuxModule.foovar; // undefined
quuxModule.bar(); // 5
quuxModule.foo(); // foo is private, undefined() raises TypeError
或者你可以更进一步,使用RequireJS制作合适的模块。
答案 1 :(得分:0)
我认为这不是一个好习惯,但是,你可以。 在导入js文件之前将它放在顶部。
<script>
// your global variable
var yourGlobalvariable;
</script>
//import scripts
<script src="yourscript1.js"></script>
<script src="yourscript2.js"></script>