Прототипное наследование || JavaScript

Для закрепления данной темы решил посмотреть гайды/почитать статейки и написать код

function Animal(name, age) {
  this.name = name;
  this.age = age;
}

function Rabbit(name, age, color) {
  Animal.apply(this, arguments);
  this.color = color;
}

Rabbit.prototype = Object.create(Animal.prototype);
Rabbit.prototype.constructor = Rabbit;

let rabbit = new Rabbit('Rabbit', 4, 'White');

Вопрос конкретно по данной строке:

Rabbit.prototype.constructor = Rabbit;

Я понимаю, что при наследовании у Rabbit будет конструктор, как у Animal, но не до конца понятно, какие проблемы могут быть вызваны отсутствием данной строки кода.


Ответы (1 шт):

Автор решения: Aziz Umarov

Если не наследовать то прототип по умолчанию

Rabbit.prototype = { constructor: Rabbit }

Но так как вы переопределяете прототип в предыдущей строке, то логично вернуть конструктор обратно на место

→ Ссылка