利用jQuery基本结构定义一个自己的jQuery框架

我们可以参照下载的没有压缩的jQueryj文件,查看Query的基本结构:

    (function (window,undefined) {
        let jQuery = function () {
            return new jQuery.prototype.init();
        };
        jQuery.prototype = {
            constructor: jQuery()
        };
        jQuery.prototype.init.prototype = jQuery.prototype;
        window.jQuery = window.$ = jQuery;
    })(window)

jQuery实质是一个闭包,防止和其他框架冲突,window参数是为了方便后期压缩代码,提升代码查找速率,undefined是也为了后期压索代码,还有再ie9一下浏览器中undefined是可以被修改的,防止被外部修改而定义的。
jQuery的基本结构和js的面向对象极其相似,就可以把它当做面向对象的原生js看,很好就定义一个自己的框架:

(function (window,undefined) {
        let njQuery = function () {
            return new njQuery.prototype.init();
        };
        njQuery.prototype = {
            constructor: njQuery()
        };
        njQuery.prototype.init.prototype = njQuery.prototype;
        window.jQuery = window.$ = njQuery;
    })(window)
发布了37 篇原创文章 · 获赞 43 · 访问量 4923

猜你喜欢

转载自blog.csdn.net/printf_hello/article/details/104206695