前幾天一直在趕一個(gè)項(xiàng)目,同時(shí)還在做著個(gè)人博客系統(tǒng),時(shí)間有點(diǎn)緊,直到今天才更新三
1.init這個(gè)函數(shù)真的挺有意思的
一開始是因?yàn)橛腥藛栁抑纈nit嗎?當(dāng)時(shí)只是簡(jiǎn)單的說了一下下面詳細(xì)說一下,算是自己的鞏固。
還是先上三段代碼:
jQuery.fn = jQuery.prototype{
//balabalabalabalaa那一坨代碼
}
init = jQuery.fn.init = init = jQuery.fn.init = function( selector, context, root ) {
var match, elem;
······//一大坨代碼
return jQuery.makeArray( selector, this );
};
init.prototype = jQuery.fn;
因?yàn)槲铱吹氖?.12.4這個(gè)版本,所以搜init:function的時(shí)候搜到的是Tween下面的init,畫原型圖畫了很長(zhǎng)時(shí)間,怎么都指不回去,后來發(fā)現(xiàn)原來是這三段代碼完成的。
init.png
看過源碼也就明白了init的作用,也就清楚jQuery返回的是一個(gè)jQuery對(duì)象,并且還是數(shù)組。
2.Sizzle選擇引擎
這個(gè)怕是自己掌握的不好,如有大神看到請(qǐng)指點(diǎn)一二。在下感激不盡!
自己先看了一下 《How browsers work》這本書上寫的,好多原理對(duì)自己很有用,然后有搜到了這位大神的博客,寫的是在是太好了,推薦一下《jQuery源碼分析系列(03) : 選擇器 Sizzle引擎 - 詞法解析》
今天就先寫到這。歡迎共同進(jìn)步,謝謝大神傳授知識(shí)。