js原型鏈指的是什么-創(chuàng)新互聯(lián)

這篇文章給大家分享的是有關(guān)js原型鏈指的是什么的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考。一起跟隨小編過來看看吧。

成都創(chuàng)新互聯(lián)公司自2013年創(chuàng)立以來,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都做網(wǎng)站、網(wǎng)站建設(shè)、外貿(mào)營銷網(wǎng)站建設(shè)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元友好做網(wǎng)站,已為上家服務(wù),為友好各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:028-86922220

原型鏈?zhǔn)且环N機(jī)制,指的是JavaScript每個(gè)對(duì)象包括原型對(duì)象都有一個(gè)內(nèi)置的[[proto]]屬性指向創(chuàng)建它的函數(shù)對(duì)象的原型對(duì)象,即prototype屬性。


作用:原型鏈的存在,主要是為了實(shí)現(xiàn)對(duì)象的繼承。

關(guān)于原型鏈的幾個(gè)概念:

1、函數(shù)對(duì)象

在JavaScript中,函數(shù)即對(duì)象。

2、原型對(duì)象

當(dāng)定義一個(gè)函數(shù)對(duì)象的時(shí)候,會(huì)包含一個(gè)預(yù)定義的屬性,叫prototype,這就屬性稱之為原型對(duì)象。

//函數(shù)對(duì)象
function F(){};
console.log(F.prototype)

js原型鏈指的是什么

3、__proto__

JavaScript在創(chuàng)建對(duì)象的時(shí)候,都會(huì)有一個(gè)[[proto]]的內(nèi)置屬性,用于指向創(chuàng)建它的函數(shù)對(duì)象的prototype。原型對(duì)象也有[[proto]]屬性。因此在不斷的指向中,形成了原型鏈。

舉個(gè)例子來說,我們將對(duì)象F的原型對(duì)象修改一下,就可以清楚看到上述的關(guān)系

//函數(shù)對(duì)象
function F(){};
F.prototype = {
    hello : function(){}
};
var f = new F();
console.log(f.__proto__)

js原型鏈指的是什么

4、new

當(dāng)使用new去調(diào)用構(gòu)造函數(shù)時(shí),相當(dāng)于執(zhí)行了

var o = {};
o.__proto__ = F.prototype;
F.call(o);

因此,在原型鏈的實(shí)現(xiàn)上,new起到了很關(guān)鍵的作用。

5、constructor

原型對(duì)象prototype上都有個(gè)預(yù)定義的constructor屬性,用來引用它的函數(shù)對(duì)象。這是一種循環(huán)引用。

function F(){};
F.prototype.constructor === F;

在實(shí)際運(yùn)用中,經(jīng)常會(huì)有下列的寫法

function F(){};
F.prototype = {
    constructor : F,
    doSomething : function(){}
}

這里要加constructor是因?yàn)橹貙懥嗽蛯?duì)象,constructor屬性就消失了,需要自己手動(dòng)補(bǔ)上。

6、原型鏈的內(nèi)存結(jié)構(gòu)

function F(){
    this.name = 'zhang';
};
var f1 = new F();
var f2 = new F();

感謝各位的閱讀!關(guān)于js原型鏈指的是什么就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

本文標(biāo)題:js原型鏈指的是什么-創(chuàng)新互聯(lián)
標(biāo)題URL:http://muchs.cn/article14/cdsjde.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)、自適應(yīng)網(wǎng)站、虛擬主機(jī)、定制網(wǎng)站、域名注冊(cè)定制開發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)頁設(shè)計(jì)公司