jQuery学习笔记之总体架构

标签:公司介绍    日期:2019-01-21 09:47    录入:美娱国际平台注册    浏览:

  

[jQuery,架构]jQuery学习笔记之总体架构

  

先来看代码:  
  
代码如下:

  
(function (window, undefined) {  
//构建jQuery对象  
var document = window.document,  
navigator = window.navigator,  
location = window.location;  
var jQuery = (function () {  
var jQuery = function (selector, context) {  
return new jQuery.fn.init(selector, context, rootjQuery);  
},  
_jQuery = window.jQuery;  
//............................

  
//............................

  
return jQuery; //981行  
})();  
//工具方法:Utilities;我在jQuery源码中没有发现是哪一块,如果有发现的.可以告诉我一下  
//回调函数列表 Callbacks  
//异步队列 Deferred  
//浏览器功能测试 Support  
//数据缓存 Cache  
//属性操作 Attributes  
//队列 Queue  
//事件系统 Event  
//选择器 Sizzle  
//Dom遍历 Traversing  
//Dom操作 Manipulation  
//样式操作 CSS  
//异步请求 Ajax  
//动画 Effects  
//坐标 Offset. 尺寸Dimensions  
window.jQuery = window.$ = jQuery;  
})(window);  

  

  

1.这个就是jQuery源码的结构了.个人觉得还是相当的清晰和有条理的.

  

  

2.jQuery的整个最外层就是一个自调用的匿名函数,这样就可以创建一个闭包.该闭包中的各种变量,函数就不会和闭包外的变量和函数发生影响,确保了jQuery的独立性,安全性.

  

  

3最后一句代码:window.jQuery 美娱国际注册 = window.$ = jQuery;则是定义了一个全局变量jQuery和$.并且吧私有变量jQuery的引用赋给了这个全局变量.

  

  

4.将最大的对象window当做实参传递到函数中,使得window变成了局部变量,可以大大的缩短查找window的查找时间,同样节省资源.

  

  

5,第二个参数undefined,是一个形参,在实际执行的时候,没有获得参数赋值,那么系统就会给他自动赋值成undefined.这样在jQuery的闭包中确保了undefined值的真时性,因为undefined在jQuery的外面有可能被篡改掉.尽管这个篡改的结果,各种浏览器不一样.

  

★★★小编:美娱国际 整理文章,欢迎大家转载 ★★★
相关文章阅读
点击右上角的分享按钮即可收藏美娱国际平台注册 随时随地与好友一起分享精彩内容噢