jQuery源码学习之一 (采用匿名函数自执行模式)

1、如何在jquery官网找到 bug的相关说明?

      打开网址  http://bugs.jquery.com/  后,再搜索框中输入bug的 编号(在jquery源码的注释中找到,例如:“ #13335 ”),可找到相关的详细说明和评论。

2、jquery应用 匿名函数自执行模式(避免全局变量污染)

   (function( window, undefined ) {
    
    })(window)

        ① 为何传递参数window?

             原因一:根据js的作用域链原理:window处于作用域链的顶级,作为参数传递可以加快查找速度,不用一级一级向上查找。

             原因二:作为参数传递便于 使用压缩工具压缩代码,否则window是不可压缩。

                             压缩的jquery源码(参数window被压缩为e):

       (function( e, undefined ) {
    
        })(window);

        ②为何传递参数undefined?

           原因:undefined为window的一个属性,在ie7下undefined可以被修改,为了防止被修改,作为参数传入。

           注:若是jQuery采用下面的写法则undefined 的传入没有意义

      (function( e, undefined ) {
    
       })(window, undefined);

备注:若是在自己的程序中采用匿名函数自执行  模式,则其前面的分号是 必须的!否则浏览器报错,省略其后面的分号,没有报错!为了养成良好的代码风格,建议不要忽略分号。



学习版本:jquery-2.0.3

jquery官网:http://jquery.com/

Sizzle官网:http://sizzlejs.com/



评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值