【发布时间】:2012-02-07 06:50:43
【问题描述】:
我目前正在 Firefox 中调试我的网站的下一层,并在我的 JavaScript 中发现了一个非常奇怪的错误。在 Firefox 中,是否需要在引用这些函数的任何代码行之上定义函数?这对我来说真的很奇怪。
这是导致错误的简化版本:
var myClass = new MyClass(myCallback);
function myCallback() {
// code
}
它抛出了以下错误:Error: myCallback is not defined
这是我在 Firefox 中需要做的事情:
var myCallback = function() {
// code
}
var myClass = new MyClass(myCallback);
所以我的问题是:这是正常行为还是发生了其他事情?我的意思是,我以后在编码时需要考虑到这一点吗?
【问题讨论】:
-
这不会在 FF 3.6 中引发错误:jsfiddle.net/nrabinowitz/CRTBK - 你确定你没有使用
var myCallback = function() { ... }? -
您引用的代码是在
if块内还是什么? -
第二个 Boris,我遇到了同样的问题,因为我的函数在 if 中,并且因为它使用的是在我设置回调后定义的变量,所以它必须在之后。
标签: javascript debugging firefox error-handling