Re[4]: Новый browser и JavaScript
От: c-smile Канада http://terrainformatica.com
Дата: 08.12.04 06:39
Оценка:
Здравствуйте, 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к несжатых.
Инсталятора не требует. Ткнул — поехали.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.