匿名函数中undefined形参疑问

刘瑜_liz 发布于 2012/11/27 20:09
阅读 200
收藏 0
;(function ( $, window, document, undefined ){
//函数体内具体代码
})(jQuery, window,document);
经常看见这样的代码,里面参数undefined的作用是什么?在网上搜了博客,还是没理解,据说是undefined可以被覆盖的,例如:
function a(){
var undefined = 5;
alert(undefined)
};

a();
但是我还没不知道作用到底是什么?求给解释下
加载中
0
0
Narky
Narky

防止全局的undefined被污染

http://www.cnblogs.com/leon82/archive/2012/02/28/2371412.html

北河
北河
回复 @宝岛阿信 : 调用一个不存在的参数,这个参数名字的值undefined,例如在(function(a,undefined){})(1);解释器运行到这个方法时等价于var a = 1,undefined =undefined;这个方法作用域内部的undefined就是确确实实的undefined。不会被外面的定义undefined污染。
刘瑜_liz
刘瑜_liz
谢谢你给链接的博客,我刚看了,不过应该是我太笨了,还是没能理解,为什么传一个不会用到的形参就能避免undefined被污染了呢?还是后面的那个方便压缩的是咋回事呢? 麻烦啦!
进击的程序员
进击的程序员
学习了
返回顶部
顶部