1,返回偽數(shù)組加屬性
$ 返回類數(shù)組對(duì)象

image.png

image.png
為什么不返回?cái)?shù)組呢?
1,作者喜歡
2,如果返回的是數(shù)組就會(huì)有一個(gè)我不想要的API
偽數(shù)組怎么使用數(shù)組的方法呢?
call方法 (這個(gè)是函數(shù)的基本方法)

image.png
2,使用原型鏈(實(shí)現(xiàn)了繼承機(jī)制)

image.png

image.png

image.png
所以當(dāng)聲明一個(gè)數(shù)組對(duì)象a時(shí) a._proto_屬性和Array.prototyp屬性指向的是同一段內(nèi)存地址
var a=[1,2],
b=[1,2,3]
a.push.call(b,4)===b.push(4) 達(dá)到相同的效果
因?yàn)閍.push是在a的__proto__里面找的 她相當(dāng)于 Array在prototype屬性里面去找push

image.png
維持著一堆方法內(nèi)存的作用是不讓這些方法丟了
當(dāng)一個(gè)內(nèi)存沒有任何人引用的時(shí)候就會(huì)死掉
jquery使用_proto_鏈接所有的對(duì)象

image.png

image.png
jquery里面的原型鏈關(guān)系:

image.png
實(shí)際的例子:

image.png

image.png

image.png
jquery把prototype改寫成了fn
image.png

image.png

image.png
