zoukankan      html  css  js  c++  java
  • 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 // 工具方法 Utilities
    10 // 回调函数列表 Callbacks Object
    11 // 异步队列 Deferred Object
    12 // 浏览器功能测试 Support
    13 // 数据缓存 Data
    14 // 队列 Queue
    15 // 属性操作 Attributes
    16 // 事件系统 Events
    17 // 选择器 Sizzle
    18 // DOM 遍历 Traversing
    19 // DOM 操作 Manipulation
    20 // 样式操作 CSS(计算样式、内联样式)
    21 // 异步请求 Ajax
    22 // 动画 Effects
    23 // 坐标 Offset、尺寸 Dimensions
    24   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/

  • 相关阅读:
    IntelliJ IDEA设置JVM运行参数
    IntelliJ IDEA 乱码解决方案 (项目代码、控制台等)
    188.索引与视图
    187.数据库操作
    186.元素
    185.流程设计
    184.数据操纵语言DML
    改变linux shell前景色和背景色
    Centos文本方式安装情况下lvm分区的创建
    深入理解计算机系统第二版习题解答CSAPP 2.20
  • 原文地址:https://www.cnblogs.com/it-snail/p/3905413.html
Copyright © 2011-2022 走看看