在Javascript中原型化对象会破坏jQuery吗?

7 浏览
0 Comments

在Javascript中原型化对象会破坏jQuery吗?

我在我的页面上添加了一个简单的.js文件,其中包含一些在ObjectArray原型中添加的相当平凡的常见任务函数。

通过试错,我发现无论函数的名称是什么,它的功能是什么,将任何函数添加到Object.prototype都会导致jQuery中的Javascript错误:

罪魁祸首是什么?

Object.prototype.foo = function() {
    /*什么都不做,破坏jQuery*/
};

我在jquery-1.3.2.js的第1056行得到了一个错误,在attr:function { }声明中:

/*对象不支持此属性或方法*/
name = name.replace(/-([a-z])/ig, function(all, letter) {
            return letter.toUpperCase();
        });

显然,G.replace未定义。

虽然很明显,有些东西我无法理解原型,但我无法弄清楚是什么。

明确一点,我不是在寻找解决方法,我已经解决了...我正在寻找的是一个答案为什么?为什么在Object.prototype中添加一个函数会破坏这段代码?

0