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

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

b.prototype=a.prototype 為什么不能直接這樣賦值

b.prototype=a.prototype 為什么不能直接這樣賦值

阿晨1998 2019-05-07 09:12:11
functionPerson(){}Person.prototype.run=function(){console.log('run')}functionAnimale(){}Animale.prototype=Person.prototype//為什么不推薦這樣直接改變某個函數(shù)的原型Animale.prototype.eat=function(){console.log('eat')}console.log(newAnimale().run())Animale.prototype=Person.prototype這一句正確的寫法應(yīng)該是vartempFunc=function(){}tempFunc.prototype=Person.prototypeAnimale.prototype=newtempFunc()為什么需要這個tempFunc,直接Animale.prototype=Person.prototype這樣賦值為什么是有問題的?
查看完整描述

2 回答

?
慕的地10843

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

Animale.prototype=Person.prototype這樣寫沒問題,Animale的原型和Person原型指向同一個對象。但如果你要實現(xiàn)繼承,希望Animale是子類,Person是父類。那么你在Animale.prototype里修改的任何方法,實際上還是改變了Person.prototype。Animale的原型對象(子類)無法獨自擴展,違背了繼承的思想vartempFunc=function(){}tempFunc.prototype=Person.prototypeAnimale.prototype=newtempFunc()此時Animale.prototype為tempFunc的一個實例對象,而tempFunc的原型對象為Person.prototype
查看完整回答
反對 回復(fù) 2019-05-07
  • 2 回答
  • 0 關(guān)注
  • 713 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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