国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專(zhuān)欄INFORMATION COLUMN

JS復(fù)習(xí)--原型鏈小結(jié)

Gu_Yan / 717人閱讀

摘要:為什么需要原型鏈為了實(shí)現(xiàn)繼承,具有相同特性的代碼不需要重復(fù)編寫(xiě),放在構(gòu)造函數(shù)里面,實(shí)例化的對(duì)象都會(huì)擁有里面的屬性了,也就是可以共享屬性和方法。

一段簡(jiǎn)單代碼引入

function Foo() {};

var f1 = new Foo();

1.概念簡(jiǎn)單理解

Foo()是構(gòu)造函數(shù),構(gòu)造函數(shù)有一個(gè)prototype屬性

Foo.prototype 是f1的原型對(duì)象,有一個(gè)constructor屬性,指向該原型對(duì)象對(duì)應(yīng)的構(gòu)造函數(shù),即

Foo.prototype.constructor

console.log(Foo.prototype.constructor === Foo);//true

console.log(f1._proto_=== Foo.prototype);//true

console.log(f1._proto_.constructor=== Foo);//true

f1是Foo的實(shí)例對(duì)象,自身沒(méi)有constructor屬性,但可以繼承原型對(duì)象的屬性,即

console.log(f1.constructor === Foo);//true

console.log(f1.hasOwnProperty("constructor"));//false


2.結(jié)合demo

原型鏈?zhǔn)菍?duì)于構(gòu)造函數(shù)而言的,首先定義一個(gè)構(gòu)造函數(shù),再實(shí)例化生成一個(gè)實(shí)例對(duì)象,可能在實(shí)例對(duì)象中沒(méi)有定義某個(gè)屬性,但是在構(gòu)造函數(shù)中有,那么它就會(huì)往上(向構(gòu)造函數(shù)中)查找,這個(gè)查找的過(guò)程就叫做原型鏈。

function Foo(){};

Foo.prototype.name = "ziziyaya";

var foo=new Foo();

console.log(foo.name); //ziziyaya

3.為什么需要原型鏈

為了實(shí)現(xiàn)繼承,具有相同特性的代碼不需要重復(fù)編寫(xiě),放在構(gòu)造函數(shù)里面,實(shí)例化的對(duì)象都會(huì)擁有里面的屬性了,也就是可以共享屬性和方法。

function Dog() {

    this.eat = "food";

    this.smell = "smart";

}

let dog1 = new Dog();

let dog2 = new Dog();

dog1.name = "huang";

dog2.name = "hei";

console.log(dog1.name+","+dog1.eat+","+dog1.smell);//huang,food,smart

console.log(dog2.name+","+dog2.eat+","+dog2.smell);//hei,food,smart

推薦文章:http://www.ruanyifeng.com/blo...

4.繼續(xù)往上引申--Foo.prototype的構(gòu)造函數(shù)是Object(),原型對(duì)象是Object.prototype

console.log(Foo.prototype.__proto__ === Object.prototype);//true

實(shí)例對(duì)象Foo.prototype本身具有constructor屬性,所以它會(huì)覆蓋繼承自原型對(duì)象Object.prototype的constructor屬性

下面是自身沒(méi)有constructor屬性,繼承自原型對(duì)象的f1和 自身有constructor屬性覆蓋了原型對(duì)象的Foo.prototype 截圖對(duì)比

再往上引申 如果Object.prototype作為實(shí)例對(duì)象的話(huà),其原型對(duì)象是什么,結(jié)果是null
附加一篇簡(jiǎn)潔易懂的原型鏈理解的文章 http://www.cnblogs.com/shuiyi...

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

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/93031.html

相關(guān)文章

  • JS對(duì)象小結(jié)

    摘要:返回新對(duì)象構(gòu)造函數(shù)與其他函數(shù)的唯一區(qū)別,就在于調(diào)用它們的方式不同。在默認(rèn)情況下,所有原型對(duì)象都會(huì)自動(dòng)獲得一個(gè)構(gòu)造函數(shù)屬性,這個(gè)屬性是一個(gè)指向?qū)傩运诤瘮?shù)的指針。 對(duì)象 1.對(duì)象的定義 無(wú)序?qū)傩缘募希鋵傩钥梢园局担瑢?duì)象或者函數(shù)。每個(gè)屬性都是一個(gè)名/值對(duì)。屬性名是字符串,因此我們可以把對(duì)象看成是從字符串到值的映射。 2.對(duì)象的創(chuàng)建 ======= 通過(guò)new創(chuàng)建對(duì)象 new...

    mzlogin 評(píng)論0 收藏0
  • 2018.11.19秋招末第二波前端實(shí)習(xí)/校招小結(jié)

    摘要:背景個(gè)人背景就讀于東北某普通二本院校計(jì)算機(jī)軟件工程專(zhuān)業(yè),現(xiàn)大四,北京實(shí)習(xí)前端方向,自學(xué),技術(shù)棧時(shí)間背景大概是在月日準(zhǔn)備好簡(jiǎn)歷開(kāi)始投遞秋招差不多已經(jīng)結(jié)束招聘崗位不多,投遞對(duì)象為大一些的互聯(lián)網(wǎng)公司事件背景第一個(gè)入職的是好未來(lái)的前端實(shí)習(xí)崗,待遇工 背景 個(gè)人背景 就讀于東北某普通二本院校計(jì)算機(jī)軟件工程專(zhuān)業(yè),現(xiàn)大四,北京實(shí)習(xí) 前端方向,自學(xué),vue技術(shù)棧 時(shí)間背景 大概是在11月9日準(zhǔn)備...

    suxier 評(píng)論0 收藏0
  • 2018.11.19秋招末第二波前端實(shí)習(xí)/校招小結(jié)

    摘要:背景個(gè)人背景就讀于東北某普通二本院校計(jì)算機(jī)軟件工程專(zhuān)業(yè),現(xiàn)大四,北京實(shí)習(xí)前端方向,自學(xué),技術(shù)棧時(shí)間背景大概是在月日準(zhǔn)備好簡(jiǎn)歷開(kāi)始投遞秋招差不多已經(jīng)結(jié)束招聘崗位不多,投遞對(duì)象為大一些的互聯(lián)網(wǎng)公司事件背景第一個(gè)入職的是好未來(lái)的前端實(shí)習(xí)崗,待遇工 背景 個(gè)人背景 就讀于東北某普通二本院校計(jì)算機(jī)軟件工程專(zhuān)業(yè),現(xiàn)大四,北京實(shí)習(xí) 前端方向,自學(xué),vue技術(shù)棧 時(shí)間背景 大概是在11月9日準(zhǔn)備...

    canger 評(píng)論0 收藏0
  • 深入理解JS的面向?qū)ο螅ǜ轮校?/b>

    摘要:的面向?qū)ο笾饕藘蓧K創(chuàng)建對(duì)象繼承。構(gòu)造函數(shù)一般來(lái)說(shuō),我們可以這樣定義構(gòu)造函數(shù)構(gòu)造函數(shù)的函數(shù)名常大寫(xiě)在這里,我們沒(méi)有顯示的創(chuàng)建對(duì)象,沒(méi)有語(yǔ)句,卻將屬性和方法賦值給了。 面向?qū)ο笫擒浖_(kāi)發(fā)方法。面向?qū)ο蟮母拍詈蛻?yīng)用已超越了程序設(shè)計(jì)和軟件開(kāi)發(fā),擴(kuò)展到如數(shù)據(jù)庫(kù)系統(tǒng)、交互式界面、應(yīng)用結(jié)構(gòu)、應(yīng)用平臺(tái)、分布式系統(tǒng)、網(wǎng)絡(luò)管理結(jié)構(gòu)、CAD技術(shù)、人工智能等領(lǐng)域。面向?qū)ο笫且环N對(duì)現(xiàn)實(shí)世界理解和抽象的方法...

    陳偉 評(píng)論0 收藏0
  • 復(fù)習(xí)Javascript專(zhuān)題(三):面向?qū)ο螅▽?duì)象的創(chuàng)建與繼承,原型原型

    摘要:在創(chuàng)建子類(lèi)實(shí)例時(shí),不能向超類(lèi)型的構(gòu)造函數(shù)中傳遞參數(shù)。構(gòu)造函數(shù)繼承子類(lèi)傳進(jìn)的值是基本思想是在子類(lèi)構(gòu)造函數(shù)的內(nèi)部調(diào)用超類(lèi)或父類(lèi)型構(gòu)造函數(shù)。繼承保證構(gòu)造函數(shù)指針指向如果想同時(shí)繼承多個(gè),還可使用添加屬性的方式類(lèi)繼承, OOP:Object Oriented Programming 面向?qū)ο缶幊獭?題外話(huà):面向?qū)ο蟮姆秶鷮?shí)在太大,先把這些大的東西理解理解。 1.什么是對(duì)象? 根據(jù)高程和權(quán)威指南上...

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

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

0條評(píng)論

閱讀需要支付1元查看
<