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

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

關(guān)于JS淺拷貝和深拷貝的問題

關(guān)于JS淺拷貝和深拷貝的問題

慕田峪8701529 2017-11-28 20:25:40
function?People?()?{ this.name='codeman' }; People.prototype?=?{ showName?:?function?()?{ alert(this.name); }, showAge?:?function?()?{ alert(this.age); } }; function?Student?()?{ People.call(this); this.job='codeTeacher' }; for?(?var?k?in?People.prototype){ Student.prototype[k]=People.prototype[k];//這里的People.prototype[k]應(yīng)該是一個(gè)方法(函數(shù)),也就是引用類型 ?????????????????????????????????????????//?那么當(dāng)我更改Student里的showName方法的話,People里的不是也應(yīng)該被改掉么,為什么沒改掉 } //?Student.prototype=People.prototype Student.prototype.showJob=function?()?{ alert(this.job); } Student.prototype.showName=function()?{ alert('superman');????????????? } var?peo?=?new?People(); peo.showName();?//還是‘codeman’
查看完整描述

2 回答

?
qq_藥藥_0

TA貢獻(xiàn)52條經(jīng)驗(yàn) 獲得超27個(gè)贊

首先你這個(gè)沒看錯(cuò)的話不是深克隆。深克隆的意思是,當(dāng)你循環(huán)完對(duì)象之后。如果對(duì)象里面還有引用數(shù)據(jù)類型,如數(shù)組。還要遍歷循環(huán)引用數(shù)據(jù)類型。你這個(gè)是淺克隆只循環(huán)了一遍,你尋找到的只是引用數(shù)據(jù)類型的指針,差不多就是這個(gè)意思。如果是深克隆,你自己還要寫個(gè)判斷函數(shù),用遞歸。

查看完整回答
反對(duì) 回復(fù) 2017-11-29
  • 慕田峪8701529
    慕田峪8701529
    “Student.prototype[k]=People.prototype[k]”這里把people.prototype[k]賦值給Student.prototype[k],而People.prototype[k]如果是方法的話不就是屬于引用類型了么,引用類型直接用來賦值,當(dāng)修改Student.prototype[k]的話,那eople.prototype[k]豈不是也會(huì)變?
  • 慕田峪8701529
    慕田峪8701529
    可能您沒理解我的問題的意思,我換個(gè)方式,還是上面這個(gè)例子,如果我使用Student.prototype=People.prototype的話,那么修改Student.prototype里的值,肯定會(huì)影響到People.prototype,因?yàn)閷?duì)象的prototype屬性也是一個(gè)對(duì)象,即引用類型,那為啥當(dāng)Student.prototype[k]=People.prototype[k]就不會(huì)互相影響了呢
  • 2 回答
  • 0 關(guān)注
  • 1410 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號(hào)

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