init: function(selector) {
this.selector = selector;
return this;
},為什么要return this呢
this.selector = selector;
return this;
},為什么要return this呢
2016-08-09
下面的寫法看似復(fù)雜了點(diǎn),其實(shí)最直接的就是直接設(shè)置一個memory,每次執(zhí)行完代碼都自動更新memory的值,在add時候,直接執(zhí)行fn(memory)就可以了。但是作者考慮到既然都是執(zhí)行回調(diào)函數(shù),我可以直接寫一個_fire()方法,無論在 add中還是fire()中都可以使用。所以顯得復(fù)雜了一些。如果單純不考慮代碼模塊化,可以自己簡單寫一下,代碼量縮小了一半多。當(dāng)然,此處還是建議大家學(xué)習(xí)本課中提到的方法
2016-08-06
跟多個函數(shù)放到一個函數(shù)中一次執(zhí)行有什么不同,不明白
__________________
到時是對的,但是在調(diào)用的時候,只用放一次,而且放到一個函數(shù)中這個過程是通過方法來添加的,而不是直接在代碼中添加。所謂的“組件”的思想。而且,最重要的是,注意這句話:當(dāng)一個對象的改變需要同時改變其它對象,并且它不知道具體有多少對象需要改變的時候,就應(yīng)該考慮使用觀察者模式。 如果一次把多個函數(shù)放到一個函數(shù)中,不僅僅可能造成這個函數(shù)過于龐大(比如要同時執(zhí)行幾十上百個函數(shù)),而且每次十分不靈巧,函數(shù)變得不夠“單純”,換句話說,太low了。。。
__________________
到時是對的,但是在調(diào)用的時候,只用放一次,而且放到一個函數(shù)中這個過程是通過方法來添加的,而不是直接在代碼中添加。所謂的“組件”的思想。而且,最重要的是,注意這句話:當(dāng)一個對象的改變需要同時改變其它對象,并且它不知道具體有多少對象需要改變的時候,就應(yīng)該考慮使用觀察者模式。 如果一次把多個函數(shù)放到一個函數(shù)中,不僅僅可能造成這個函數(shù)過于龐大(比如要同時執(zhí)行幾十上百個函數(shù)),而且每次十分不靈巧,函數(shù)變得不夠“單純”,換句話說,太low了。。。
2016-08-04
js基本常識,適當(dāng)?shù)牡胤骄彺?對象和數(shù)字的遍歷值..... 因?yàn)槊看稳?option[i] 都是立即查找的,性能........
2016-08-02
這里有個有意思的事情,$('#end').find('li').prevObject===$('#end')總是返回false,其實(shí)$('#end')===$('#end')也會返回false。這里是因?yàn)槊恳淮问褂?()就會調(diào)用new jQuery(),形成的即便傳了相同的參數(shù)也不是同一個對象
2016-07-31
find pushStack兩個函數(shù)對象連起來看才好理解。前一個 ret = this.pushStack(len > 1 ? jQuery.unique(ret) : ret);此處this指find前的jQuery對象,因?yàn)槭莟his在調(diào)用pushStack函數(shù),所以pushStack函數(shù)中的this也可以視為find前的jQuery對象,在pushStack中,把this(也即find前的jQuery對象)賦給ret.prevObject屬性,此處兩個確實(shí)是一個引用。
2016-07-31
對于程序員來說,有基本素養(yǎng)就是首先你會自學(xué),第二你要明白任何知識的獲得都是自己好奇心在驅(qū)動,而不是坐等從小到大的填鴨式教育。
2016-07-31