(function( window, undefined ) {
...
})( window );
jquery采用了自调用匿名函数的方式,可以在其中定义变量,这些变量会在方法执行完后销毁,减少全局变量污染,这一点很重要,必须确保jquery中的变量和程序中的其他变量冲突.
传入的参数:
window:使得window由全局变量变为局部变量,不需要将作用域链回退到顶层作用域,这样可以更快的访问window,更重要的是,将window作为参数传入,可以在压缩代码时进行优化,在jquery的压缩文件中,(function(a,b){})(window); // window 被优化为 a
undefined:在自调用匿名函数的作用域内,确保undefined是真的未定义.因为undefined能够被重写,赋予新的值。