jquery 代碼閱讀 —— jquery.js

 

爲了打通任通二脈,準備閱讀jquery.js, 順便寫點註釋javascript

 從入口文件jquery.js中能夠看出,jquery首先加載的是core.js,共加載了32個模塊,封裝在了jQuery中。java

window.jQuery = window.$ = jQueryjquery

其次查看核心代碼閱讀: core.js git

https://github.com/purejade/jquery/blob/master/src/core.js (參考github上代碼)github

jQuery 源碼學習app

基本知識準備異步

1. javascript 語法函數

2. 模塊加載,define 或者 require學習

    - 利用AMD模式異步加載模塊  ui

3. 經常使用函數,如apply、call,對象方法複用

4. prototype  

Core.js 源碼

1. jQuery

3. jQueyr.fn 

2. jQuery.extend和jQuery.fn.extend

 

####

core.js中實現了jQuery對元素的獲取

    jQuery = function( selector, context ) {

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

    },

每次獲取一個elem元素,都會從新生成。

 

jQuery.extend = jQuery.fn.extend函數實現,將有利於jQuery類進行插件擴展;其中jQuery.extend支持靜態函數擴展,僅jQuery可用;而jQuery.fn.extend支持成員函數的擴展.

 

jQuery.extend擴展了jQuery經常使用的函數,如isNumeric,isWindow,isFunction,isPlainObject,isEmptyObject,type, globalEval,each,trim,makeArray,inArray,merge,map,grep etc...

 

根據jQuery對外提供的extend函數,能夠對jQuery進行擴展,能夠寫一些須要的插件。

 

具體的格式爲:

(function($){

    $.extend({})

}).(jQuery) 

相關文章
相關標籤/搜索