Странный баг при prototype
Я заметил, что когда меняю a.optima, меняется и c.optima
//Создаем обьект apple var Apple = function(){ this.optima = 1; } var a = new Apple(); //Создаем обьект container и присваем прототип от apple var Container = function(){} Container.prototype = a; var c = new Container(); //Странный баг a.optima = 2; alert(c.optima); Почему так происходит? |
Потому что в c нет свойства optima, оно из a берётся.
|
Цитата:
|
Странного ничего нет, т.к когда ты пишешь Container.prototype = a;, то в контейнере будет лежать ссылка на Apple, соответсвенно когда ты изменяешь параметр значение optimа, то при вызове: c.optima, это значение и берется. Вроде не ошибся...
|
Часовой пояс GMT +3, время: 22:04. |