Я много читал о том, как работает прототипное наследование и как интерпретатор перемещает цепочку прототипов, чтобы найти свойство.Сколько раз родительский объект создавался во время прототипального наследования
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 вызывается только один раз. Итак, «абхик» и «малай» должны делиться одним и тем же объектом «Человек»? Итак, в памяти будет 3 объекта. 1.abhik 2.malay 3.man (Один экземпляр разделяет оба) Итак, по этой логике измененное значение должно делиться между объектами?
malay.hands=3;
console.log(abhik.hands);
abhik.hands=4;
console.log(malay.hands);
Но это не тот случай. Почему так?
Для получения дополнительной информации о том, как подклассы: http://stackoverflow.com/questions/16063394/prototypical -inheritance-writing-up/16063711 # 16063711 Все, что задано для something.prototype, делится между экземплярами, если ваш экземпляр должен подклассировать Человека, чем в теле функции отца, чтобы вызвать человека в контексте созданного Отца так: Человек ,называть (это); – HMR
В тот момент, когда вы настраиваете свойство руки на малайском языке, вы покрываете свойство, затененное от прототипа. (Sry для форматирования, для мобильных устройств) – C5H8NNaO4