在Mozilla浏览器中修复对象错误

时间:2013-11-12 08:20:47

标签: javascript prototyping

我创建了一个名为Tocl的Javacript库。我已经在Chrome和Safari中测试了它,并且每个都能正常工作。但是当我在Mozilla浏览器(Firefox,Aurora)上测试时,这里什么也没发生。我不知道这里发生了什么。控制台说'Tocl未定义'和'ToclObject'不是构造函数。但在Chrome和Safari上,每件事都可以。你能帮忙找出我的代码中有什么问题吗?

这是我的存储库:

https://github.com/mahdaen/tocl

https://github.com/mahdaen/tocl/tree/master/sample

感谢。

1 个答案:

答案 0 :(得分:1)

我成功地解决了这个问题:

window.ToclObject = { bug : 'bug fixed'};
Object.defineProperty(window, 'ToclObject', {});

console.log(window.ToclObject.bug); // error

我还添加了修复:

window.ToclObject = { bug : 'bug fixed'};
Object.defineProperty(window, 'ToclObject', { value : window.ToclObject });
console.log(window.ToclObject.bug); // bug fixed

问题出现在这里:tocl.base.js:1260

PS:如果你对我如何隔离它感兴趣:

我将您的代码复制到一个显示问题并删除(删除)代码的文件,直到错误无法显示。然后我回溯看看我在错误显示和没有显示之间删除了什么和tada ...这就是问题所在。