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

為了賬號安全,請及時綁定郵箱和手機立即綁定

繼承的一些問題

People.call(this,name,age)換成this=new Person(name,age)有區(qū)別嗎?

正在回答

2 回答

Person.call(this,name,age); ?其中的Person是指視頻中的構(gòu)造函數(shù):

function Person(name,age){

? ? this.name = name;

? ? this.age = age;

}

Person.call(this,name,age);其中的call是指Function.prototype.call(),其中的this在其上下文中指向Student對象。

因此,Person.call(this,name,age);是調(diào)用Person構(gòu)造函數(shù),并把Person構(gòu)造函數(shù)中的this替換為傳入的this參數(shù)所代表的Student對象,因此Student對象便繼承了name和age兩個屬性。

1 回復 有任何疑惑可以回復我~

Person.call(this,name,age);這一句是讓Student繼承了Person中屬性,并沒有影響this指針。

而this=new Person(name,age);這一句將改變this指針的值使其變?yōu)镻erson類型的對象。因此通過Student構(gòu)造器返回的對象為this是一個Person類型的對象。后面對Student.prototype所做的設(shè)置應該對返回的Person類型的對象不起作用。

0 回復 有任何疑惑可以回復我~
#1

qq_放飛心情_0 提問者

Person.call(this,name,age);這一句是讓Student繼承了Person中屬性是怎么繼承的,我的理解是讓他執(zhí)行了那個函數(shù),他這個對象就有了這2個屬性,相當于給他分配屬性
2016-08-06 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
JavaScript深入淺出
  • 參與學習       281098    人
  • 解答問題       1047    個

由淺入深學習JS語言特性,且解析JS常見誤區(qū),從入門到掌握

進入課程

繼承的一些問題

我要回答 關(guān)注問題
微信客服

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

幫助反饋 APP下載

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

公眾號

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