Показать сообщение отдельно
  #1 (permalink)  
Старый 15.02.2011, 15:53
Интересующийся
Отправить личное сообщение для lsync Посмотреть профиль Найти все сообщения от lsync
 
Регистрация: 04.09.2010
Сообщений: 12

Запрет на наследование стандартных объектов
Пишу простое расширение для Firefox. Мозилла отклонили его по причине:

"Extending the prototype of native objects like Object, Array and String is not allowed because it can cause compatibility problems with other add-ons or the browser itself"

Тобишь, не разрешают мне расширять прототипы стандартных объектов. Логично.

Объекты творю вот так (по рекомендациям, изложенным в статье на этом же сайте):

function MyClass() {};

MyClass.prototype = {
	
	member01		: value01,
	member02		: value02,

	func01 : function () {
		...
	},

	func02 : function () {
		...
	}

} // Prototype end


Подскажите, плз, это расширяет какой-либо стандартный прототип?

Пара подключаемых библиотек творят объекты вот так:

function Class01(){

    this.member01 = value01;
    this.member02 = value02;
        
    this.func01 = func01;
    this.func02 = func02;
}


function func01(){
	...
}

function func02(){
	...
}


...и вот так:

function Class02(){

    this.member01 = value01;
    this.member02 = value02;
}



Class02.prototype.func03 = func03;

function func03(){
	...
}


...может, это расширяет?


Перелопатил весь код, не могу найти, где расширяю стандартные прототипы. Хелп, плз.
Ответить с цитированием