当前位置:编程学习 > JAVA >>

jquery源码分析

今天看到这部分不是很了解,还请各位帮忙给分析分析:

1. jquery映入眼帘的就是这个自调用匿名函数:
          (function( window, undefined ) {

            // jquery code

          })(window);
2.为什么要传入window呢?

通过传入window变量,使得window由全局变量变为局部变量,当在jQuery代码块中访问window时,不需要将作用域链回退到顶层作用域,这样可以更快的访问window;这还不是关键所在,更重要的是,将window作为参数传入,可以在压缩代码时进行优化,看看jquery-1.6.1.min.js:

 

(function(a,b){})(window); // window 被优化为 a   

我对标红的地方有疑问,不需要将作用域练回退到顶层作用域,这里为什么不需要回退而且为什么要回退到顶层作用域?作用域连是怎么回退的?而且,为什么会更快的访问window?
还有对压缩代码有好处,我能这样理解吗:当发布的时候,把代码压缩,就把window和undefined压缩为a和b,在整个文件中这个地方用的不多,这样压缩有意义吗?
麻烦各位帮我分析分析。。。 --------------------编程问答-------------------- 自己 先顶一个  别沉了 --------------------编程问答-------------------- 自己 先顶一个  别沉了  --------------------编程问答-------------------- 这样window就成了这个函数自己内部的东西了,自己的东西访问起来应该会快点儿吧。 --------------------编程问答-------------------- window变成a了,就小了呗。压缩一下占的空间就更小了,文件小了,占带宽就小了。
个人感觉,不知道是不是对的。
补充:Java ,  Java相关
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,