首页 > 代码库 > jquery源码--总体结构
jquery源码--总体结构
1 (function( window, undefined ) { 2 // 构造jQuery 对象 3 var jQuery = (function() { 4 var jQuery = function( selector, context ) { 5 return new jQuery.fn.init( selector, context, ro otjQuery ); 6 } 7 return jQuery; 8 })(); 9 // 工具方法 Utilities10 // 回调函数列表 Callbacks Object11 // 异步队列 Deferred Object12 // 浏览器功能测试 Support13 // 数据缓存 Data14 // 队列 Queue15 // 属性操作 Attributes16 // 事件系统 Events17 // 选择器 Sizzle18 // DOM 遍历 Traversing19 // DOM 操作 Manipulation20 // 样式操作 CSS(计算样式、内联样式)21 // 异步请求 Ajax22 // 动画 Effects23 // 坐标 Offset、尺寸 Dimensions24 window.jQuery = window.$ = jQuery;25 })(window);
1.用匿名函数是为了防止变量污染。
2.传参传入window undefined,一方面代码压缩之后在匿名函数里面window和undefined可以作为参数而被压缩,可以减少代码量,更重要的一点是window和undefined作为局部变量传入,可以减少作用链的访问距离,也就是说不用访问到window层就可以取得window对象。undefined参数传入是确保undefined的值确实是“undefined”,因为在某些浏览器,可以修改undefined的值,比如undefined = ‘test‘, window.undefined的输入为test。
另:
文章算是<jquery 技术内幕>的读书笔记,http://book.douban.com/subject/25823709/
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。