Я добавил простой файл .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 - undefined.
Хотя очевидно, что что-то, что я просто не обволакиваю головой прототипом, я с трудом могу понять, что это такое.
Чтобы быть ясным, я не ищу обходного пути, у меня это обработано... то, что я ищу, является ответом на Почему?. Почему добавление функции в Object.prototype
прерывает этот бит кода?