Глобальные объекты Javascript перестают работать после смены прототипа!
Я не, если я что-то упускаю очевидное, но когда я делаю что-то вроде ниже:-
Object.prototype.inherit = function(fromClass) {
fromClass.apply(this, Array.prototype.slice.call(arguments, 1));
for(var key in fromClass.prototype){
if(typeof fromClass.prototype[key] == 'function')
this.prototype[key] = fromClass.prototype[key];
}
};
Тогда я больше не могу работать ни с какими предметами. Я всегда становлюсь неопределенным. Аналогично, когда я пытаюсь "ввести" какой-то метод в Array.prototype
тогда массивы перестают работать! Я использую Firefox 4.0.1.
Я что-то пропустил?
1 ответ
Решение
ПОЖАЛУЙСТА, ПОЖАЛУЙСТА, ПОЖАЛУЙСТА, ПОЖАЛУЙСТА, НЕ РАСШИРЯЙТЕ ОБЪЕКТ.ПРОТОТИП.
Спасибо.
Теперь перейдем к вашему вопросу, что вы имеете в виду, что вы больше не можете работать с объектами? Вы собираетесь разорвать петли "in-in", но если не считать этого, все еще должно работать.