您的位置:首页 > Web前端 > JQuery

jQuery源码阅读笔记——整体结构

2016-12-05 15:55 169 查看

jQuery(版本2.0.3)整体结构如下:

下载地址:https://code.jquery.com/jquery/
版权声明:以下为本人在妙味课堂听课的笔记
(function(window,undefined){
Line 21 --- 94        定义了一些变量和函数
Line 96 --- 283       给JQuery对象添加方法和属性
Line 285 --- 347      extend:继承方法
Line 349 --- 817      jQuery.extend():扩展一些工具方法
Line 877 --- 2856     Sizzle:复杂选择器的实现
Line 2880 --- 3042    Callbacks:回调对象,实现对函数的统一管理
Line 3043 --- 3183    Deferred:延迟对象,实现对异步的统一管理
Line 3184 --- 3295    support:功能检测,主要是检测浏览器的功能信息
Line 3308 --- 3652    data():数据缓存
Line 3653 --- 3797    queue():队列管理
Line 3803 --- 4299    对元素属性的操作:attr() prop() val()等
Line 4300 --- 5128    事件操作的相关方法:on() trigger()
Line 5140 --- 6057    DOM操作,节点的添加、获取、删除、筛选、包装
Line 6058 --- 6620    样式操作:css()
Line 6621 --- 7854    数据操作:ajax() load() getJson()
Line 7855 --- 8584    运动的方法:animate()
Line 8585 --- 8792    位置和尺寸的方法:offset()
Line 8804 --- 8821    JQuery支持模块化的模式
Line 8826           window.jQuery = window.$ = jQuery;// jQuery为对外提供的接口,通过挂载到window下可以在闭包之外获取到
})( window);
1、以匿名函数自执行的方式,作用:可以防止命名冲突,在函数内部定义的变量都是局部变量,可以有效防止用户外部自定义的函数或变量与JQuery中定义的变量、函数冲突。
2、将window作为参数传入,提高性能。不作为参数传进去,程序在执行时也会向上查找到window,但是作为参数传进去之后,程序每次查找,都会先找离他最近的变量,                                              而不需要每次都向上查找到document。其次,通过传参,在缩减代码时,可将window用变量代替。
3、参数undefined,有些浏览器下,undefined可以作为变量名而赋予其它值。为了避免外界操作对jQuery内部执行造成的影响,所以在此内部定义undefined。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息