我已经阅读了很多关于原型继承如何工作以及解释器如何遍历原型链来查找属性的内容。
function Man()
{
this.hands=2;//1
}
function father()
{
this.name="";
}
father.prototype= new Man();//2
var malay= new father();
var abhik= new father();
现在我的问题是语句 #1 & #2 只被调用一次。那么“abhik”和“malay”应该共享同一个 Man 对象吗?所以内存中会有 3 个对象。1.abhik 2.malay 3.man (一个实例由两者共享)所以按照这种逻辑,更改的值应该在对象之间共享?
malay.hands=3;
console.log(abhik.hands);
abhik.hands=4;
console.log(malay.hands);
但事实并非如此。为什么这样 ?