jquery的套路

1,返回偽數組加屬性

$ 返回類數組對象


image.png
image.png

為什么不返回數組呢?
1,作者喜歡
2,如果返回的是數組就會有一個我不想要的API

偽數組怎么使用數組的方法呢?
call方法 (這個是函數的基本方法)

image.png

2,使用原型鏈(實現了繼承機制)

image.png
image.png

image.png

所以當聲明一個數組對象a時 a._proto_屬性和Array.prototyp屬性指向的是同一段內存地址

var a=[1,2], 
    b=[1,2,3]
a.push.call(b,4)===b.push(4)  達到相同的效果
因為a.push是在a的__proto__里面找的   她相當于 Array在prototype屬性里面去找push  
image.png

維持著一堆方法內存的作用是不讓這些方法丟了
當一個內存沒有任何人引用的時候就會死掉
jquery使用_proto_鏈接所有的對象

image.png
image.png

jquery里面的原型鏈關系:

image.png

實際的例子:


image.png
image.png
image.png

jquery把prototype改寫成了fn


image.png
image.png
image.png
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • 在線閱讀 http://interview.poetries.top[http://interview.poetr...
    前端進階之旅閱讀 114,681評論 24 450
  • 1,javascript 基礎知識 Array對象 Array對象屬性 Arrray對象方法 Date對象 Dat...
    Yuann閱讀 945評論 0 1
  • 進入菩心本源第三天課程,劉老師一句話讓我記憶猶新,就是那句:愛TA就給TA想要的。 我們的成長過程中,“為你好”這...
    小學生老韓閱讀 517評論 0 0
  • 感恩!成甲讀書古川武士的《堅持,一種可以養成的習慣》,如何培養一種習慣呢?反抗期如嬰兒學步并做簡單記錄,不穩定期行...
    梧桐70閱讀 135評論 0 0