小括号{'()'}在js中有很多用处,最为常见的是function()、更改运算优先级、创建对象 new A()等,但是在jQuery的最外层确使用了小括号,开始的时候我一直不知道为什么,知道最近自己写组件的时候发现这个用处很大。
下面给出一段示例代码:
(function(){ var A={ a:0, b:1, c:function() { this.a=1; this.b=2; } } window.A= A; })(window);
这个时候你会发现一个奇怪的现象,在上面的一段代码中最外层也使用了小括号。在这段代码中小括号是起到立即执行的作用,即当这个js文件引入的时候就执行加载。
可能有人会问这样有什么好处,我认为最好的好处就是避免了全局污染的问题。js不想其他语言可以定义在各个类里面,可以确定他的使用范围,js不行,如果定义在最外围就是全局变量,当别人引用你的js文件的时候,如果变量没有很好的处理,很有可能会出现全局污染。
装载自:http://blog.csdn.net/u012251421/article/details/46603697