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

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

關于原型對象的問題

關于原型對象的問題

飲歌長嘯 2018-09-06 14:14:26
關于原型對象的問題function Person(name,age,job){    this.name=name;    this.age=age;    this.job=job; } Person.prototype.friends=['shell','dom','bom']; Person.prototype.color='red';var person2=new Person('Mark',29,'teach'); person2.color='green';console.log(person2.color);//greenvar person1=new Person('jack',19,'stu');console.log(person1.color);//redperson1.friends.push('window');console.log(person1.friends);//["shell", "dom", "bom", "window"]console.log(person2.friends);//["shell", "dom", "bom", "window"]問題描述:1.我們可以通過對象實例訪問原型中的值,卻不能通過對象實例來重寫原型中的值。如果在實例中添加了一個與對象原型中重名的屬性,該屬性將會屏蔽原型中那個屬性。(javascript高級程序設計(第三版))如以上代碼前兩個顯示的測試結果 :console.log(person2.color);//greenconsole.log(person1.color);//red2.關鍵問題是,改變了person1的friends,為什么引起了person1原型中值friends的改變??如上代碼后兩個測試結果:console.log(person1.friends);//["shell", "dom", "bom", "window"] console.log(person2.friends);//["shell", "dom", "bom", "window"]
查看完整描述

1 回答

?
慕的地10843

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

person1.friends.push('window');

這里的 firends 屬性仍舊取的是原型 Person.prototype.friends,因為 person1 并沒有自己的屬性 friends,push 并不能產生一個新的數組。


查看完整回答
反對 回復 2018-09-30
  • 1 回答
  • 0 關注
  • 556 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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