с системой наследования на протитах я знаком и как она работает в ОБЩЕМ представляю.
но недавно решил углубиться и немного запутался.
собственно смутило меня вот что.
function Rabbit() { }
Rabbit.prototype = { eats: true };
var rabbit = new Rabbit();
в таком случае при создании объекта rabbit в его свойство __proto__ будет записана ССЫЛКА на свойство prototype конструктора(Rabbit).
Но почему в этом случае
function Rabbit() { }
Rabbit.prototype = { eats: true };
var rabbit = new Rabbit();
Rabbit.prototype = {};
alert(rabbit.eats);
результат TRUE, а в этом
function Rabbit(name) { }
Rabbit.prototype = { eats: true }
var rabbit = new Rabbit();
Rabbit.prototype.eats = false;
alert(rabbit.eats);
FALSE. я никак не могу понять.
ведь и в первом и во втором случае мы изменили Rabbit.prototype