2024年4月26日发(作者:)

第8章 调试技巧

理想的软件开发是不需要调试的,但在现实开发过程中,开发人员总是会因为不同的原因而犯各种

各样的错误,以至于给所构建的系统带来不同程度的危害。有些错误浅显而低级,比如用错了大小写,

或者写错了变量名等等;而有些错误是复杂的逻辑错误,这类错误往往隐藏较深,不容易找出错误的原

因;另外一些错误可能是功能实现的方式有问题,导致程序有性能瓶颈等等。可以说,软件开发就是不

断编码和调试的过程。使用好的调试工具并掌握好的调试技巧能够加快软件开发进程,提高产品质量。

本章将向读者详细介绍使用Firebug和Aptana调试JavaScript程序的一些技巧。

8.1 深入解析Firebug的调试功能

在本书的第五章中已经向读者介绍过了Firefox浏览器的优秀调试插件Firebug的界面和基本功能。

本节将向读者深入讲解如何利用Firebug的控制台输出各种自定义的信息、查看错误提示,如何利用命

令行工具在页面上执行JavaScript代码,以及如何使用脚本查看器进行脚本的调试。

8.1.1 检查常规错误

当Firefox遇到一个JavaScript错误时,Firebug会在其控制台输出一个错误信息。这个错误信息包

含了错误的描述、发生错误的代码片断、包含该代码片断的函数或者方法、以及事件对象信息。下面这

个示例中,在测试按钮的事件处理函数中调用了一个不存在的函数,代码如下所示。

"/TR/xhtml1/DTD/">

console demo

用Firefox打开页面,如图8.1所示。单击“test button”按钮,按钮的click事件处理函数errorTest

会被调用,这时候errorTest会调用一个不存在的函数notExistFunction,从而引发一个错误。浏览器遇到

·220·

脚本错误时,右下角Firebug的绿色小图标会变成红色以提示当前页面存在脚本错误,如图8.2所示。

图8.1 示例程序界面 图8.2 错误提示

红色图标后面的数字表示错误的个数。单击红色图标或者按F12打开Firebug界面,如图8.3所示。

图8.3 错误提示

错误被控制台用红色的字体,配上红色的错误图标醒目的现实了出来。错误的标题是对错误的描述,

这里“notExistFunction is not defined”指notExistFunction没有被定义。标题下面是发生错误的那一行代

码。标题右边是发生错误的文件名和错误代码所在的行号。单击标题后面的文件说明或者标题下面的错

误行代码提示,都可以转到脚本查看器并完整的查看该文件的脚本代码,如图8.4所示。