码迷,mamicode.com
首页 > 编程语言 > 详细

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

时间:2015-03-15 18:15:07      阅读:142      评论:0      收藏:0      [点我收藏+]

标签:

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

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

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

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

function(){   //myModule()重写为匿名函数的表达式
   //模块代码
}())  //结束定义立即调用

 

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

标签:

原文地址:http://www.cnblogs.com/chenqiushi/p/4340100.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!