当使用Prototype.js时,你如何处理调试?

3

在很多情况下,当我的prototype.js JavaScript代码出现错误时,我没有收到任何错误通知、行号等。我通常会使用alert语句跟踪我的代码,直到找到它停止的地方。有没有更好的方法来追踪这些错误?


我有同样的问题——在Firebug中,我甚至看不到Prototype的“throw”输出,但是在Chrome中一切都很好。 - Lee Goddard
@Dustin 我完全同意。有时候,尝试调试prototype.js类真的是一场噩梦。错误并不总是在FF控制台中显示。今天,我证明了一个异常被抛出,但在FF控制台中没有任何线索。我打算加入try()块:try {     } catch(err) {     console.log(err.message); } - Charles Robertson
2个回答

0
我已经使用了Firebug...
在这种情况下,尝试使用Chrome - 我发现Firefox无法通知我使用Prototype.js的代码中的错误,但是Chrome可以。并不是说我更喜欢Google而不是Mozilla。

0

根据不同的浏览器,有很多很好的处理错误的方法。如果您正在使用 Firefox,可以安装 FireBug 然后使用:

console.log('like an alert but in the firebug window');

这比按确定、确定、确定...要快得多...

http://getfirebug.com/

Firebug还拥有一个惊人的JS错误调试器,并且能够提供关于您代码中出现了什么问题的很好的反馈。如果你问我,这是必备工具!

1
谢谢。我已经使用Firebug来进行调试,但是有很多时候我的JS代码由于拼写错误或其他原因而无法正常运行(没有错误提示),由于我正在处理的代码规模很大,所以我最终花费了太多时间来追踪问题。我正在寻找更好的解决这类问题的方法。 - Dustin
通常在Firebug的控制台窗格下,它会让你看到代码失败的位置。您还可以使用断点来浏览代码。您尝试过吗? - jamesmhaley
不确定为什么这个答案被接受,因为它并没有回答问题。Firebug的“控制台”在使用(至少是这个版本的)Prototype.js时不会显示运行时错误。 - Lee Goddard
@leegee 这个问题不是为什么错误没有显示,而是有更好的调试方式。使用console.log比使用alert(如所述)更好地调试代码。 - jamesmhaley
@sparkyfied 请看一下你上面的评论,关于他已经在使用Firebug。似乎他的问题是,Firebug实际上并没有记录实际的错误,而我发现即使FF不记录,Chrome也会记录。 - Lee Goddard

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接