Показать сообщение отдельно
  #4 (permalink)  
Старый 03.08.2010, 01:38
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

ну так это не лучший вариант как там объяснено. Смысл в том, что на основе свойства prototype функции будут созаваться объекты. Т.е. после
var rabbit = new Rabbit();

rabbit.[[prototype]] (в браузерах оно реализовано как rabbit.__proto__) будет ссылаться на созданный объект Animal
function Animal(){}
function Rabbit(){}
Rabbit.prototype = new Animal();
Rabbit.prototype.prop = 2; // только не надо так в real life делать
rabbit = new Rabbit();
alert(rabbit.__proto__ instanceof Animal); // работает в ff, opera
alert(rabbit.__proto__ === Rabbit.prototype); // работает в ff, opera
alert(rabbit.prop);

т.е. __proto__ - прототип объекта, prototype - объект, который будет использоваться как прототип для создаваемых в дальнейшем объектов
Ответить с цитированием