亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

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

js的函數屬性prototype

js的函數屬性prototype

千萬里不及你 2018-12-07 05:21:45
js的是基于原型鏈繼承的,請問下面的兩種情況差別在哪里? function Oa(){ } Oa.prototype={ fn1:function(){}, fun2:function(){} } function Ob(name,age){ this.name=name; this.age=age; } //第一種寫法,類Ob通過new繼承了Oa的屬性(此處為空)和原型 Ob.prototype=new Oa; //第二種寫法,直接把Oa的原型對象賦值給了Ob Ob.prototype=Oa.prototype; 這兩種寫法,都能夠實現Ob的實例共享了Oa原型對象上的方法,差別在于第一種寫法可以看作Oa是基類,Ob是子類,而第二種寫法不是嗎
查看完整描述

6 回答

?
蝴蝶刀刀

TA貢獻1801條經驗 獲得超8個贊

第二種用得是同一個原型定義,如果Ob有擴展也會影響到Oa

查看完整回答
反對 回復 2018-12-24
?
一只萌萌小番薯

TA貢獻1795條經驗 獲得超7個贊

你可以畫一下原型鏈(包括prototype,__proto__,constructor)。

查看完整回答
反對 回復 2018-12-24
?
慕標5832272

TA貢獻1966條經驗 獲得超4個贊

這個你看一下JavaScript面向對象編程,我記得博客園中有個這樣的系列文章,講的非常透徹,你搜一下

查看完整回答
反對 回復 2018-12-24
?
holdtom

TA貢獻1805條經驗 獲得超10個贊

第2中寫法,這樣導致基類的實例屬性,子類訪問不到

查看完整回答
反對 回復 2018-12-24
?
慕妹3146593

TA貢獻1820條經驗 獲得超9個贊

父類里面的屬性訪問不到

查看完整回答
反對 回復 2018-12-24
  • 6 回答
  • 0 關注
  • 495 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號