0
我们有一个看起来像下面这样的代码:JavaScript继承对象创建新的数据成员的任务?
var Product = function(){
}
Product.prototype =
{
GetName: function(){
return this.name;
},
name: "something"
};
var Apparel = function(){
}
Apparel.prototype = Object.create(Product.prototype);
var jeans = new Apparel();
console.log(jeans.name);
console.log(jeans.GetName());
jeans.name = "Levis";
console.log(jeans.name);
console.log(jeans.GetName());
输出: 东西 东西 李维斯李维斯
所以,一切正常,因为它应该!但问题是,只要我们执行jeans.name =“Levis”赋值,我们就会在调试器TWO的名称中看到它。一个是父母产品,一个是服饰。这不是一种记忆浪费吗?因为name是父类的属性,所以我期望这个属性会被使用,而不是创建一个新的属性。
有什么想法为什么?
感谢
利奥尔