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

А системы расширения какие-то подразумеваются?
С Уважением, Andir!
using(RSDN@Home 1.1.4 beta 3){/* Работаем! */}