Я добавил простой файл .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 прерывает этот бит кода?