亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
各位注意:
var _jQuery = window.jQuery,
_$ = window.$;
這段代碼是放到Jquery的最前面,不然就保存不到window.$原先的內容了
非常棒的理解,看到就轉了下哈


理解:1.$(),jQuery()是執行一個函數,$和jQuery是函數名稱,這個函數返回的是一個對象,所以里面是一個new表達式,但是名字不能是自己,否則無限循環。2.既然不是自己,其實可以理解為jQuery()返回的不是jQuery對象,而是jQuery.fn.init(一個名字而已)對象。3.但是為了統一和方法/屬性的共用(理解原型鏈),jQUuery這樣處理,jQuery.fn.init.prototype = jQuery.prototype.

后面還有4.............不能超過3000字
確實經典,$.data 與 $().data,公用同一個方法,internalData()很巧妙的分開,內部使用;外部使用包括$.data 與 $().data兩種方法,根據傳遞dom與jquery的不同,兩種模式存儲,贊贊,mark
$().each 調用$.each函數
[this[j]]返回是數組形式,pushStack,新建jQuery并且加工
支持自己擴展的時候,用深拷貝
這里這些東西感覺好難,最好出個視頻啊 感覺看不懂
安全工廠,訪問不到ajQuery.prototype函數
作用域是函數和變量的可訪問范圍,作用域控制函數和變量的可見性,而作用域鏈是函數建立過程中,與之對應變量對象(variable object)的集合
上下文的建立階段,先是處理arguments, 參數,接著是函數的聲明,最后是變量的聲明,會把變量自動賦值為undefined,所以var aQuery2=function(){} 為undefined, 而 function aQuery1(){} 正常輸出
別說了,老師是日本來的 - -
前兩個是放在對象中;第三個放在jquery.cache 。??
https://github.com/jquery/jquery/blob/10399ddcf8a239acc27bdec9231b996b178224d3/src/core/ready.js#L80
看源碼發現左側代碼是有問題的。源碼可以很清楚的看到callback.call里是傳入了index(i)的值的。源碼是if ( isArrayLike( obj ) ) {
length = obj.length;
for ( ; i < length; i++ ) {
if ( callback.call( obj[ i ], i, obj[ i ] ) === false ) {
break;
}
}
}
需要在var results = document.querySelectorAll(selector);后面加上這一句this.length = results.length;
課程須知
源碼的閱讀不是一蹴而就的,需要大家有一定的功底,比如jQuery的基礎運用以及API的熟悉度,除此之外要有牢固的javascript、DOM、CSS的基礎功底,甚至還需要理解常見的設計模式、數據結構等等。當然大家也不要被這些給嚇住了,理解,總是需要一種慢慢的學習過程。
老師告訴你能學到什么?
通過本課程的學習,您可以由淺入深地剖析jQuery庫的設計與實現。 其中我們圍繞的重心: 1、設計理念 2、結構組織 3、接口設計 4、模式運用 5、場景套用

微信掃碼,參與3人拼團

微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號

友情提示:

您好,此課程屬于遷移課程,您已購買該課程,無需重復購買,感謝您對慕課網的支持!

本次提問將花費2個積分

你的積分不足,無法發表

為什么扣積分?

本次提問將花費2個積分

繼續發表請點擊 "確定"

為什么扣積分?

舉報

0/150
提交
取消