Объясните логику

Есть код:

let animal = {
  eats: true
};

function Rabbit(name) {
  Rabbit.prototype = animal
  this.name = name;

}

let rabbit1 = new Rabbit("White Rabbit");
let rabbit2 = new Rabbit("Black Rabbit");

console.log(rabbit1); // prototype = {constructor: Rabbit}
console.log(rabbit2); // prototype = {eats: true}

Почему у rabbit1 prototype не изменился а у rabbit2 изменился?

P.S Да я знаю что надо писать Rabbit.prototype = animal вне функции, чтобы было ок. Просто хочу понять логику.


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