如何在JavaScript中调试客户端错误

How do I debug client errors in JavaScript?

本文关键字:调试 客户端 错误 JavaScript      更新时间:2023-09-26

我有一个window.onerror处理程序发送JavaScript错误到我们的服务器。我希望通过使用源映射将最小化源中的错误链接回原始代码来分析这些,但似乎Chrome和Firefox只提供错误的行号。据我所知,如果没有列号,源映射是没有用的。

那么,给定最小化源代码的行数和形式为x is undefined的错误消息,我可以采取哪些步骤进行调试?

(如果它有任何区别,我使用Rails 3.2中的资产管道)。

Chrome(和IE10)现在会给你列号作为window.onerror回调的第四个参数。这是Firefox添加列号的错误,但看起来不太有希望。

如果你想使用Source Maps,你需要下载Chrome Canary(即Chrome的预发布开发版本)。

这是一个实验性的功能,还没有在Chrome的主版本中。(即使在Canary中,它也必须在浏览器选项中显式地打开)。

我推荐在firefox中使用firebug,这里有一个入门教程:

http://thecodecentral.com/2007/08/01/debug-javascript-with-firebug

我已经用过几次这个来调试非常糟糕的JS,但我通常只是这样做:

Firefox下拉菜单> Web开发人员> Web控制台。这将向您显示行#和抛出的错误(最重要的),我发现这通常不需要进行调试工作就足够了。