Я новичок в изучении концепций JavaScript. Хотите понять, как работает прототипное наследование. Мое впечатление было, если ваш класс наследует родителя, и у вас есть один и тот же метод в прототипах обоих классов, когда вы вызываете метод на дочернем экземпляре, будет вызван метод в дочернем прототипе.Обозначение прототипа JavaScript
Код:
function Animal(name) {
this.name = name;
}
Animal.prototype.printName = function() {
console.log(this.name + ' in animal prototype');
}
function Cat(name) {
Animal.call(this, name);
}
Cat.prototype.printName = function() {
console.log(this.name + ' in cat prototype');
}
Cat.prototype = Object.create(Animal.prototype);
var anm1 = new Animal('mr cupcake');
anm1.printName();
var cat1 = new Cat('cat');
cat1.printName();
При вызове cat1.printName() я ожидал, что журнал «кота в кошки прототипа», но он вошел «кота в прототипе животных». Может кто-то объяснит мне причину. Благодарю.
Большое спасибо за объяснение. – shilpi