如何使javascript错误控制台打印出回调中的错误?

如何使javascript错误控制台打印出回调中的错误?,javascript,firebug,Javascript,Firebug,如果回调之外有javascript错误,Firebug控制台会打印出错误。但是,如果回调中出现ant错误,则不会看到任何打印输出 document.observe('dom:loaded', function() { // not notified in console alert(undefinedVariable); }); // notified in console alert(anotherUndefinedVariable); 几乎我所有的代码都在回调中,所以我很

如果回调之外有javascript错误,Firebug控制台会打印出错误。但是,如果回调中出现ant错误,则不会看到任何打印输出

document.observe('dom:loaded', function() {
    // not notified in console
    alert(undefinedVariable);
});

// notified in console
alert(anotherUndefinedVariable);

几乎我所有的代码都在回调中,所以我很难跟踪错误。无论错误发生在何处,我如何打印控制台中的每个错误?

您可以尝试显式打印控制台--window.console.log(…某物…)应该可以在任何地方工作。

我需要告诉Prototype不要接受异常

Ajax.Responders.register({ 
        onException: function(request, exception) { 
                (function() { throw exception; }).defer(); 
        } 
});

既然您使用的是原型,是否与此相关您是否在Chrome中尝试了相同的代码?我希望通过错误控制台自动收到错误通知,而不必手动
控制台
现有的每个变量。我不确定您在这里说什么?无论您是编写“alert(…)”还是“window.console.log(…)”,都与您编写的那一行是等效的,因此如果您不想自己编写所有这些行,那么这些行是什么并不重要?至于不编写任何代码的自动通知:JavaScript引擎只对抛出的内容执行此操作,如果没有捕获到您的脚本,则会终止。所以你能更好地解释你真正想要什么吗?警报只是一个例子。我想打印出所有的错误,不管它是否被提醒。例如,此行不会发出任何警报:
var foo=undefinedVar+5
,但它应该在控制台上打印一个错误。然后您需要重新表述您的问题。例如,此代码生成两个错误,这两个错误都显示在各种浏览器的调试工具中:setTimeout(function(){alert(undefinedVariable);},1000);警报(另一个未定义的变量);如果您看到了其他内容,请创建一个演示JSFIDLE.net帖子,并将其添加到您的问题中,作为实际出错情况的演示。