Здравствуйте, Andir, Вы писали:
A>A>function MyObject() {/* конструктор объекта */ }
A>// Прототип объекта
A>MyObject.prototype =
A>{
A> field = 100, // default value
A> MyFunction: function() { print(this.field); }
A>}
A>var myObj1 = new MyObject(); // Cоздаём новый экземпляр объекта
A>myObj1.field = 1;
A>var myObj2 = new MyObject(); // Cоздаём новый экземпляр объекта
A>myObj2.field = 2;
A>myObj1.MyFunction(); // Печатает 1
A>myObj2.MyFunction(); // Печатает 2
A>myObj2.MyFunction = function() { print("Hello World!");} /* Переопределяем функцию экземпляра */
A>myObj2.MyFunction(); // Печатает Hello, World!
A>
A>Как такое реализовать без прототипов я даже не представляю. Приведи пример, может я неправильно понимаю ?
А если так?
function MyObject() { this.somefield = 10; }/* конструктор объекта он же и прототип!*/ }
MyObject.field = 100, // default value
MyObject.MyFunction = function() { print(this.field); }
var myObj1 = new MyObject(); // Cоздаём новый экземпляр объекта
myObj1.field = 1;
var myObj2 = new MyObject(); // Cоздаём новый экземпляр объекта
myObj2.field = 2;
myObj1.MyFunction(); // Печатает 1
myObj2.MyFunction(); // Печатает 2
myObj2.MyFunction = function() { print("Hello World!");} /* Переопределяем функцию экземпляра */
myObj2.MyFunction(); // Печатает Hello, World!
MyObject.MyFunction = function() { print("Hello Universe!");} /* Переопределяем функцию для всех остальных экземпляров класса */
A>Я в исходники выкладывал EventFramework ...
О! вот спасибо!
Это где-то реально используется?
Кто-нить видел живые активные библиотеки где это используется?
A>Бороться с мозиллой боюсь на этом фронте будет тяжеловато
Зачем бороться? Надо жить рядом.
Мой броузер это моно exe файл размером примерно 900к несжатых.
Инсталятора не требует. Ткнул — поехали.