我眼中的jQuery

web前端 2328 0 7年前

各位应该和我一样,对jQuery这个js轻量级框架有着很深的感触,因为有了它,使我们的工作变得更加轻松,使代码的结构变得更加清晰。但是同样也是有负面的影响,如果使用的多了,自己js的能力可能会下降,这个也是因人而异的。

为了增强自己对jQuery的理解,也为了体会一下大师John Resig的代码风格,今天好好的看了下jQuery的源码。

其实jQuery的总体架构还是挺简单的,最基础的代码如下:

(function() {
    var myQuery = (function() {
        var myQuery = function(args) {
            alert(args);
        };
        return myQuery;
    })();
    window.myQuery = window.$ = myQuery;
})();
$(88);

上面的代码是我根据jQuery的源码自己改写的比较清晰的组织形式。

首先定义了一个命名空间,在命名空间里面声明了一个函数,函数内部返回一个函数指针,其实这个指针才是真正要用到的对象,之后所有的jQuery都是在这个对象上扩展方法。

Js代码:
window.myQuery = window.$ = myQuery;

上面的方法就是让全局变量中的$指向这个对象指针。