var a = {
c:1,
a:3
}
var b = a;
b.c = 0;
alert(a.c);
Объект существует отдельно от переменных, переменные хранят только ссылку на него, поэтому алерт 0. Из одной переменной мы меняем свойство, а из другой его получаем. Но объект один единственный.
1 {} - создание объекта, свойств нет.
2 this конструктора равен этому обьекту.
3 выполняем код конструктора к примеру this.a = 0 ;
в результате наш обьект уже не пуст {a:0};
4 конструктор завершает работу, и мы наконец передаем ссылку на него в переменную.
Спасибо врубился т.е под созданием объекта (п. 1) подразумевается наполнение его стандартными свойствами javascript в том числе и свойством prototype вместе с его значением на момент создания объекта. А (п. 4) подразумевает просто присвоение переменной el ссылки на
этот объект!?
Ой, ссори поспешил. Все равно не пойму: Вот я
1. создал объект
2. дал ему ссылку на прототип
3. выполнил код внутри функции Element которая перезаписала ссылку на
прототип, причем до обращения к этому объекту извне.
4. вернул ссылку на Element переменной var el
Т.е. основной вопрос попрежнему остается почему у меня нет доступа к
этому прототипу ?