關(guān)于原型與原型鏈

函數(shù)對象

所有引用類型(函數(shù),數(shù)組,對象)都擁有__proto__屬性(隱式原型)

所有函數(shù)擁有prototype屬性(顯式原型)(僅限函數(shù))

?原型對象:擁有prototype屬性的對象荷辕,在定義函數(shù)時(shí)就被創(chuàng)建



1恢筝、談?wù)勀銓υ偷睦斫?/b>欢际?

在 JavaScript 中当窗,每當(dāng)定義一個(gè)對象(函數(shù)也是對象)時(shí)候,對象中都會包含一些預(yù)定義的屬性萄唇。其中每個(gè)函數(shù)對象都有一個(gè)prototype 屬性檩帐,這個(gè)屬性指向函數(shù)的原型對象,使用原型對象的好處是所有對象實(shí)例共享它所包含的屬性和方法另萤。

2湃密、什么是原型鏈?原型鏈解決的是什么問題四敞?

1)原型鏈解決的主要是繼承問題

2)每個(gè)對象擁有一個(gè)原型對象泛源,通過 proto 指針指向其原型對象,并從中繼承方法和屬性忿危,同時(shí)原型對象也可能擁有原型达箍,這樣一層一層,最終指向 null(Object.proptotype.__proto__指向的是null)癌蚁。這種關(guān)系被稱為原型鏈(prototype chain)幻梯,通過原型鏈一個(gè)對象可以擁有定義在其他對象中的屬性和方法

3)構(gòu)造函數(shù) Parent、Parent.prototype 和 實(shí)例 p 的關(guān)系如下:(p.__proto__ === Parent.prototype)

3努释、prototype 和?proto?區(qū)別是什么?

1)prototype是構(gòu)造函數(shù)的屬性

2)__proto__是每個(gè)實(shí)例都有的屬性咬摇,可以訪問 [[prototype]] 屬性

3)實(shí)例的__proto__與其構(gòu)造函數(shù)的prototype指向的是同一個(gè)對象

(prototype是“類”的原型伐蒂,__proto__是實(shí)例后的對象的原型。)

通俗點(diǎn)來講:

prototype是“類”的原型,__proto__是對象的原型肛鹏。js沒有類逸邦,只有constructor,constructor 就是你new fn()時(shí)候的那個(gè)"fn"

當(dāng)你new fn的時(shí)候,產(chǎn)生的實(shí)例的_proto_指向fn.prototype,這2個(gè)是同一個(gè)東西

```

function Foo(){}

var myfoo? = new Foo();

myfoo.__proto__? === Foo.prototype

```


1在扰、原型

①所有引用類型都有一個(gè)__proto__(隱式原型)屬性缕减,屬性值是一個(gè)普通的對象

②所有函數(shù)都有一個(gè)prototype(原型)屬性,屬性值是一個(gè)普通的對象

③所有引用類型的__proto__屬性指向它構(gòu)造函數(shù)的prototype

2芒珠、原型鏈

當(dāng)訪問一個(gè)對象的某個(gè)屬性時(shí)桥狡,會先在這個(gè)對象本身屬性上查找,如果沒有找到皱卓,則會去它的__proto__隱式原型上查找裹芝,即它的構(gòu)造函數(shù)的prototype,如果還沒有找到就會再在構(gòu)造函數(shù)的prototype的__proto__中查找娜汁,這樣一層一層向上查找就會形成一個(gè)鏈?zhǔn)浇Y(jié)構(gòu)嫂易,我們稱為原型鏈。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末掐禁,一起剝皮案震驚了整個(gè)濱河市怜械,隨后出現(xiàn)的幾起案子颅和,更是在濱河造成了極大的恐慌,老刑警劉巖缕允,帶你破解...
    沈念sama閱讀 211,194評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件峡扩,死亡現(xiàn)場離奇詭異,居然都是意外死亡灼芭,警方通過查閱死者的電腦和手機(jī)有额,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,058評論 2 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來彼绷,“玉大人巍佑,你說我怎么就攤上這事〖拿酰” “怎么了萤衰?”我有些...
    開封第一講書人閱讀 156,780評論 0 346
  • 文/不壞的土叔 我叫張陵,是天一觀的道長猜旬。 經(jīng)常有香客問我脆栋,道長,這世上最難降的妖魔是什么洒擦? 我笑而不...
    開封第一講書人閱讀 56,388評論 1 283
  • 正文 為了忘掉前任椿争,我火速辦了婚禮,結(jié)果婚禮上熟嫩,老公的妹妹穿的比我還像新娘秦踪。我一直安慰自己,他們只是感情好掸茅,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,430評論 5 384
  • 文/花漫 我一把揭開白布椅邓。 她就那樣靜靜地躺著,像睡著了一般昧狮。 火紅的嫁衣襯著肌膚如雪景馁。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,764評論 1 290
  • 那天逗鸣,我揣著相機(jī)與錄音合住,去河邊找鬼。 笑死慕购,一個(gè)胖子當(dāng)著我的面吹牛聊疲,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播沪悲,決...
    沈念sama閱讀 38,907評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼获洲,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了殿如?” 一聲冷哼從身側(cè)響起贡珊,我...
    開封第一講書人閱讀 37,679評論 0 266
  • 序言:老撾萬榮一對情侶失蹤最爬,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后门岔,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體爱致,經(jīng)...
    沈念sama閱讀 44,122評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,459評論 2 325
  • 正文 我和宋清朗相戀三年寒随,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了糠悯。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,605評論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡妻往,死狀恐怖互艾,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情讯泣,我是刑警寧澤纫普,帶...
    沈念sama閱讀 34,270評論 4 329
  • 正文 年R本政府宣布,位于F島的核電站好渠,受9級特大地震影響昨稼,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜拳锚,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,867評論 3 312
  • 文/蒙蒙 一假栓、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧霍掺,春花似錦但指、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,734評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽拦坠。三九已至连躏,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間贞滨,已是汗流浹背入热。 一陣腳步聲響...
    開封第一講書人閱讀 31,961評論 1 265
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留晓铆,地道東北人勺良。 一個(gè)月前我還...
    沈念sama閱讀 46,297評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像骄噪,于是被迫代替她去往敵國和親尚困。 傳聞我的和親對象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,472評論 2 348

推薦閱讀更多精彩內(nèi)容

  • 一逻谦、原型 在JS設(shè)計(jì)出來的時(shí)候掌实,只是為了實(shí)現(xiàn)一樣網(wǎng)頁的簡單交互,并沒有想過把JS設(shè)計(jì)成為一門面向?qū)ο蟮恼Z言邦马。后來的...
    花了謝了還會開閱讀 1,346評論 0 1
  • 通過題目來熟悉this贱鼻,原型鏈,繼承 開胃菜----this 1. apply滋将、call邻悬、bind有什么作用,有什...
    JunVincetHuo閱讀 377評論 0 0
  • 一、對象 要理解原型鏈耕渴,還要先從JavaScript的對象說起拘悦。在js中,對象分為兩類橱脸,一類是函數(shù)對象础米,一類是普通...
    o0ther閱讀 442評論 0 0
  • 原型鏈和繼承是JavaScript的核心概念,本身就比較抽象添诉,想要完全理解需要一點(diǎn)時(shí)間屁桑,特別是底層的實(shí)現(xiàn)邏輯。我總...
    DaveJump閱讀 698評論 0 1
  • 理解關(guān)于Function的原型鏈問題 關(guān)于Function的原型鏈問題的一些個(gè)人粗略理解,歡迎指正錯(cuò)誤的地方 要理...
    馬濤濤_風(fēng)閱讀 1,447評論 0 0