jQuery的实例化过程

来源:互联网 发布:淘宝售后客服问答 编辑:程序博客网 时间:2024/06/06 16:29

最近在框架封装的课,了解到jQuery的实例化是返回JQuery原型的初始化函数(构造函数)实例化出来的实例,但为了jQuery实例可以访问到jQuery原型,所以改变init构造函数的原型指向jQuery原型,主要代码实现如下,其中用Jerry 代替jQuery。

(function(window, undefined) {    //节省查找window对象的时间;压缩的时候参数是可以压缩的    //undefined在早期的浏览器中是可以重新赋值的,参数中添加undefined保证了undefined的值被固定,不会被重新赋值    //Jerry的角色(对象和普通函数)    var Jerry = function(selector) {        return new Jerry.fn.init(selector);    };    //Jerry的原型对象    Jerry.fn = Jerry.prototype = {        constructor : Jerry,        init: function(selector) {        },
Jerry:'1.0'
}; //改变init构造函数的原型指向 Jerry.fn.init.prototype = Jerry.fn; //向外部公开接口(实际上给window对象添加了两个属性$ Jerry window.$ = window.Jerry = Jerry; })(window);

0 0