Каков будет результат выполнения этого кода? Почему?
function Rabbit(name) {
this.name = name;
}
*!*
Rabbit.prototype = { eats: true };
var rabbit = new Rabbit("Кроль");
Rabbit.prototype = {};
*/!*
alert(rabbit.eats);
Решение
Решение
Результатом будет true, т.к. свойство prototype изменено после создания объекта через new Rabbit.
Это окажет влияние на новые объекты, а значением rabbit.__proto__ по-прежнему является animal.
Изменение свойства prototype для функции-конструктора не влияет на уже созданные ей объекты.
#275