jQuery的初始化与对象构建之浅析
jQuery的初始化与对象构建之浅析
发布时间:2016-12-30 来源:查字典编辑
摘要:小结一下:1.整个类库定义在一匿名函数中,杜绝了全局变量的产生;2.将undefined作为缺失的参数传递,防止了undefined变量的污...

小结一下:

1.整个类库定义在一匿名函数中,杜绝了全局变量的产生;

2.将undefined 作为缺失的参数传递,防止了undefined 变量的污染;

3.可以看出$(...) 实际上返回的是jQuery.fn.init 对象的实例,随后将该对象的prototype 指向了jQuery.prototype (语句jQuery.fn.init.prototype = jQuery.fn),因此产生的实例共享着jQuery.prototype 里的方法和属性且实现了链式编程的操作;

4.最后通过window.jQuery = window.$ = jQuery 将jQuery 与$ 导出为全局变量。

复制代码 代码如下:

(function(window, undefined) {

// Define a local copy of jQuery

var jQuery = (function() {

var jQuery = function(selector, context) {

// The jQuery object is actually just the init constructor 'enhanced'

return new jQuery.fn.init(selector, context/*, rootjQuery*/);

};

// ...

jQuery.fn = jQuery.prototype = {

constructor : jQuery,

init : function(selector, context, rootjQuery) {

// ...

}

// ...

};

// Give the init function the jQuery prototype for later instantiation

jQuery.fn.init.prototype = jQuery.fn;

// ...

// Expose jQuery to the global object

return jQuery;

})();

// ...

window.jQuery = window.$ = jQuery;

})(window);

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新Javascript教程学习
热门Javascript教程学习
编程开发子分类