_jQuery和_$值的問題
感覺有些問題,拿出來討論一下。
1:
Var _jQuery = window.jQuery,
? ? _$ = window.$;
這兩句代碼是一個即時執行函數中運行的,在這個地方還沒有將jQuery掛載到window上,$也是一樣,所以_jQuery和_$的值應該是undefined。
2:在jQuery.noConflict中,由于整個即時執行函數已經執行完成,jQuery和$已經是window的屬性,所以可以拿來判斷,而同時由于noConflict是閉包,所以可以訪問_jQuery和_$。所以,運行jQuery.noConflict ()方法時,如果window上的$屬性指向jQuery的話,則把window.$賦值為_$,其實就是賦值為undefined.放棄jQuery的做法也是一樣的。
以上是我的理解,不知道對不對,可以討論下。
2017-02-02
是這么理解的,不過noConflict不能叫閉包吧? 只是一直保留著_$ & _jQuery的引用, 不管_$是undefined還是上個框架的$