Я добавил на свою страницу простой файл .js
, в котором есть несколько довольно простых функций общего назначения, добавленных к прототипам Object
и Array
.
Методом проб и ошибок я выяснил, что добавление любой функции к Object.prototype
независимо от ее имени и от того, что она делает, вызывает ошибки Javascript в jQuery:
Виновник?
Object.prototype.foo = function() {
/*do nothing and break jQuery*/
};
Ошибка, я получаю строку 1056 из jquery-1.3.2.js
, в attr: function {} объявление:
/*Object doesn't support this property or method*/
name = name.replace(/-([a-z])/ig, function(all, letter) {
return letter.toUpperCase();
});
Видимо G.replace не определено.
Хотя очевидно, что есть кое-что, что я просто не заворачиваю в голову с прототипированием, я с треском проваливаюсь, чтобы понять, что это такое.
Чтобы было ясно, я не ищу обходной путь, я справился с этим ... то, что я ищу, - это ответ на Почему? . Почему добавление функции к Object.prototype
нарушает этот бит кода?