您的位置:首页 > Web前端 > JavaScript

Javascript匿名函数的作用之一:创建临时的命名空间,防止全局变量污染

2015-03-15 17:41 274 查看
如果你写了一段js模块的代码,这段代码将用在不同的程序中(对客户端Javascript来说通常是在各种各样的网页中)。假定这段代码定义了一个用以存储中间计算结果的变量,问题来了,这个变量可能会同其他代码中的全局变量发生冲突。解决的办法是将模块代码放入一个函数内部,然后立即调用这个函数。这样全局变量就变成了函数内部的局部变量:

function() myModule(){
//模块代码,这个模块所用的所有变量都是局部变量,而不会污染全局命名空间

}
myModule();   //立即调用这个函数


这样还是太麻烦,可以直接定义一个匿名函数,并在单个表达式中调用它:

(function(){   //myModule()重写为匿名函数的表达式
//模块代码
}())  //结束定义立即调用
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐