成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

prototype原型

RebeccaZhong / 1035人閱讀

摘要:當(dāng)系統(tǒng)為構(gòu)造器創(chuàng)建原型對(duì)象時(shí),會(huì)執(zhí)行這樣一條語句也就是說,這個(gè)原型是的一個(gè)實(shí)例。原型鏈原型對(duì)象也是對(duì)象,當(dāng)這個(gè)對(duì)象找不到某個(gè)屬性時(shí),會(huì)到構(gòu)造器的原型對(duì)象中去找,這個(gè)就是原型鏈。

1、prototype介紹

功能:返回對(duì)象類型原型的引用

格式:Class.prototype

2、快速入門

注意:
Person.prototype.age不是Person.age
Person.prototype.age是指為Person類下的實(shí)例添加的age屬性
Person.age 是指為Person類添加的靜態(tài)屬性

3、原理

當(dāng)程序加載Person函數(shù)時(shí),會(huì)為Person構(gòu)造器創(chuàng)建Person原型對(duì)象,它們是獨(dú)立存在的。構(gòu)造器中有一個(gè)prototype屬性指向了原型對(duì)象,原型對(duì)象中有一個(gè)constructor屬性指向構(gòu)造器,當(dāng)Person類的實(shí)例在使用一個(gè)不存在的屬性時(shí),就會(huì)自動(dòng)到Person構(gòu)造器的原型對(duì)象中去找。

p1.constructor:p1對(duì)象中沒有constructor屬性,所以會(huì)到Person構(gòu)造器的原型對(duì)象中去找,原型對(duì)象中的constructor指向了Person構(gòu)造器,所以最后返回的是構(gòu)造器。

問題:增加p3.age=20,那么p1.age的值是多少?

p3.age相當(dāng)于為p3對(duì)象動(dòng)態(tài)添加了一個(gè)叫age的屬性,但沒有改變Person原型對(duì)象中的age的值,之后p3不用去原型對(duì)象中找age屬性了,p1仍然沒有age屬性,所以仍然去找原型對(duì)象中的age屬性。

4、原型繼承

所有類的父類都是Obeject類,為什么?
問題:
原型是什么?
原型是對(duì)象,它是Object類的實(shí)例。
當(dāng)系統(tǒng)為Person構(gòu)造器創(chuàng)建原型對(duì)象時(shí),會(huì)執(zhí)行這樣一條語句:
Person.prototype=new Object(),也就是說,這個(gè)原型是Object的一個(gè)實(shí)例。那么,Object類下的所有屬性和方法會(huì)被這個(gè)原型對(duì)象所擁有。Person下的實(shí)例就可以通過這個(gè)原型對(duì)象使用這些屬性和方法,所以說,Object是所有類的父類。

5、原型鏈

Person原型對(duì)象也是對(duì)象,當(dāng)這個(gè)對(duì)象找不到某個(gè)屬性時(shí),會(huì)到Object構(gòu)造器的原型對(duì)象中去找,這個(gè)就是原型鏈。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/103725.html

相關(guān)文章

  • 溫故js系列(15)-原型&原型鏈&原型繼承

    摘要:給添加屬性給的原型對(duì)象添加屬性原型鏈在中,每個(gè)對(duì)象都有一個(gè)屬性,其保存著的地址就構(gòu)成了對(duì)象的原型鏈。實(shí)例變量實(shí)例函數(shù)原型鏈繼承有了原型鏈,就可以借助原型鏈實(shí)現(xiàn)繼承。是中唯一一個(gè)處理屬性但是不查找原型鏈的函數(shù)。 前端學(xué)習(xí):教程&開發(fā)模塊化/規(guī)范化/工程化/優(yōu)化&工具/調(diào)試&值得關(guān)注的博客/Git&面試-前端資源匯總 歡迎提issues斧正:原型&原型鏈&原型繼承 JavaScript-原...

    Ethan815 評(píng)論0 收藏0
  • 《javascript高級(jí)程序設(shè)計(jì)》筆記:原型圖解

    摘要:不理解沒關(guān)系,下面會(huì)結(jié)合圖例分析上一篇高級(jí)程序設(shè)計(jì)筆記創(chuàng)建對(duì)象下一篇高級(jí)程序設(shè)計(jì)筆記繼承參考之原型鏈的解讀三張圖搞懂的原型對(duì)象與原型鏈繼承與原型鏈 文章直接從原型圖解開始的,如果對(duì)一些概念不太清除,可以結(jié)合后面幾節(jié)查看 1. 圖解原型鏈 1.1 鐵三角關(guān)系(重點(diǎn)) function Person() {}; var p = new Person(); showImg(https://s...

    vspiders 評(píng)論0 收藏0
  • JavaScript...原型與繼承中的原型鏈...

    摘要:原型原型是什么在中函數(shù)是一個(gè)包含屬性和方法的類型的對(duì)象而原型就是類型對(duì)象的一個(gè)屬性在函數(shù)定義時(shí)就包含了屬性它的初始值是一個(gè)空對(duì)象在中并沒有定義函數(shù)的原型類型所以原型可以是任何類型原型是用于保存對(duì)象的共享屬性和方法的原型的屬性和方法并不會(huì)影響 原型 原型是什么 在JavaScript中 函數(shù)是一個(gè)包含屬性和方法的Function類型的對(duì)象 而原型(Prototype)就是Function...

    MiracleWong 評(píng)論0 收藏0
  • JS基礎(chǔ)-原型、原型鏈真的不能一知半解

    摘要:原型鏈和對(duì)象的原型是對(duì)象實(shí)例和它的構(gòu)造函數(shù)之間建立的鏈接,它的值是構(gòu)造函數(shù)的。對(duì)象的原型根據(jù)上文提到的構(gòu)造調(diào)用函數(shù)的時(shí)候會(huì)創(chuàng)建一個(gè)新對(duì)象,自動(dòng)將的原型指向構(gòu)造函數(shù)的對(duì)象。 showImg(https://segmentfault.com/img/remote/1460000020185197); JS的原型、原型鏈一直是比較難理解的內(nèi)容,不少初學(xué)者甚至有一定經(jīng)驗(yàn)的老鳥都不一定能完全說清...

    changfeng1050 評(píng)論0 收藏0
  • 一篇文章帶你理解原型原型

    摘要:上面的代碼,運(yùn)行以后,我們可以看到因?yàn)榈脑褪侵赶虻膶?shí)例上的,所以可以訪問他的屬性值,那如果我不想讓訪問的構(gòu)造函數(shù)里聲明的屬性值,那怎么辦呢只需要將指向的原型而不是實(shí)例就行了。 走在前端的大道上 本篇將自己讀過的相關(guān) javascript原型和原型鏈 文章中,對(duì)自己有啟發(fā)的章節(jié)片段總結(jié)在這(會(huì)對(duì)原文進(jìn)行刪改),會(huì)不斷豐富提煉總結(jié)更新。 文章——深入理解javascript之原型 一般的...

    yintaolaowanzi 評(píng)論0 收藏0
  • 原型鏈一:原型原型

    摘要:說白了,原型就是構(gòu)造函數(shù)用來構(gòu)造新實(shí)例的模板對(duì)象。什么是原型鏈先回答什么是原型。例如這個(gè)原型的原型就是這個(gè)構(gòu)造函數(shù)的,既這個(gè)原型對(duì)象。這些原型對(duì)象通過像鏈子一樣連起來,就叫做原型鏈。 原型鏈初步學(xué)習(xí) 這篇博客只是我初步理解原型鏈的一個(gè)個(gè)人學(xué)習(xí)筆記,寫的比較粗略,且有的地方可能理解錯(cuò)誤. 更多更專業(yè)的關(guān)于原型鏈的解釋請(qǐng)看JavaScript深入之從原型到原型鏈和阮一峰的博客:Javas...

    MudOnTire 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<