总体结构

mac2022-06-30  33

代码清单 2-1 构造 jQuery 对象模块的总体源码结构16 (function( window, undefined ) {            // 自调用匿名函数,当jQuery初始化时,这个自调用匿名函数包含的所有JavaScript代码将被执行。        // 构造 jQuery 对象22         var jQuery = (function() {            // 定义变量jQuery,自调用匿名函数返回jQuery构造函数并赋值给变量jQuery25             var jQuery = function( selector, context ) { // 定义变量jQuery,它的值是jQuery构造函数,955行返回并赋值给第22行的变量jQuery,这两个jQuery变量是等价的,都指向jQuery构造函数27                 return new jQuery.fn.init( selector, context, rootjQuery ); // 调用jQuery构造函数时,实际返回的是jQuery.fn.init()的实例。28             },            // 一堆局部变量声明97             jQuery.fn = jQuery.prototype = {    // 构造函数jQuery()的原型对象98                 constructor: jQuery,            // 覆盖原型对象的属性constructor,使它指向jQuery构造函数99                 init: function( selector, context, rootjQuery ) { ... },    // 定义原型方法jQuery.fn.init,负责解析参数selector和context的类型并执行相应的查找                // 一堆原型属性和方法319         };322         jQuery.fn.init.prototype = jQuery.fn;    // 用jQuery构造函数的原型对象jQuery.fn覆盖了jQuery.fn.init()的原型对象。324         jQuery.extend = jQuery.fn.extend = function() { ... }; // 定义了jQuery.extend() 和 jQuery.fn.extend(),用于合并两个或多个对象的属性到第一个对象388         jQuery.extend({            // 执行jQuery.extend()在jQuery构造函数上定义了一堆静态属性和方法                // 一堆静态属性和方法892         });955         return jQuery;957     })();        // 省略其他模块的代码9246     window.jQuery = window.$ = jQuery;    // jQuery变量暴露给全局作用域window,并定义了别名$9266 })( window );

转载于:https://www.cnblogs.com/lixiaodou/p/7095266.html

最新回复(0)