第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

腳本原型鏈接更改目標

腳本原型鏈接更改目標

慕少森 2022-09-11 20:27:41
我是一名學(xué)習(xí)編程的學(xué)生。我有一個問題。    function a () {    }    a.prototype.prtSomething = function(arg) { console.log(arg); }    function b () {    }    var myObj = new b();如果我想在 myObj 中使用 a 的方法,我們使用此代碼。b.prototype = Object.create(a.prototype);b.prototype.constructor = b;這意味著更改范圍鏈接的目標。但是我們?yōu)槭裁床皇褂眠@段代碼呢?b.prototype.__proto__ = a.prototype;我認為創(chuàng)建和使用新對象一定有理由。但我不知道。請教我。謝謝。
查看完整描述

1 回答

?
三國紛爭

TA貢獻1804條經(jīng)驗 獲得超7個贊

至少有一個很好的理由:該功能已被棄用,因此您不應(yīng)將其用于將來的兼容性。__proto__

我建議閱讀有關(guān)該主題的MDN頁面,如果您正在學(xué)習(xí),還可以閱讀有關(guān)繼承的鏈接頁面。

有用的附加說明:使用是一種以原型方式模擬類繼承的方法(b從a繼承),而無需調(diào)用“父”(a)構(gòu)造函數(shù)。如果您希望使用調(diào)用的“父”構(gòu)造函數(shù)模擬繼承,則可以使用b.prototype = Object.create(a.prototype);b.prototype = new a();

當然,它是對類行為的模擬,它在細節(jié)上有所不同,因為原型不是類,例如,您可以在創(chuàng)建實例將函數(shù)動態(tài)添加到 的原型中,并且新函數(shù)將可用于該實例,因為它通過引用工作。以類似的方式,第二個示例不會為每個后續(xù)實例執(zhí)行 的構(gòu)造函數(shù),而是在將其分配給 的原型時只執(zhí)行一次。abab

實際上,當你了解原型時,我發(fā)現(xiàn)它們真的很強大,允許許多組合。

function a () {

    console.log('a constructor');

}


a.prototype.prtSomething = function(arg) { console.log(arg); }


function b () {

    console.log('b constructor');

}


b.prototype = Object.create(a.prototype);

b.prototype.constructor = b;


var myObj = new b();

展開代碼段

function a () {

    console.log('a constructor');

}


a.prototype.prtSomething = function(arg) { console.log(arg); }


function b () {

    console.log('b constructor');

}


b.prototype = new a();

b.prototype.constructor = b;


var myObj = new b();


查看完整回答
反對 回復(fù) 2022-09-11
  • 1 回答
  • 0 關(guān)注
  • 98 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號