JavaScript直接在页面声明的变量都是全局变量
代码测试地址与实例:点击打开链接
全局变量过多时,命名的冲突和选择就会成为问题,对于一般的小型开发还可以通过各种命名方案解决,但是如果我们需要封装 发布一个自己的框架时,为了不占用关键字污染全局,必须把内部的变量完全隐藏。
就像这样:
var fuck = "aa";
var sun = [];
var fuck1 = function(){};
var fuck2 = function(){};
JS存在一种特殊的写法来解决这种问题:
首先看例子:
var a="bbbb";
function f(){
var a=1;
var b=1;
}
f();
alert(a);
在这里 执行结果为 bbbb
如果上面的代码加上这一句:
alert(b);
程序运行结果出错,表示b并不存在,说明函数之内的变量不与外部冲突,外部无法访问到内部
但从内部是可以访问到外部的:
var a="bbbb";
function