JavaScript 調試新武器
Venkman 是為 基于 Mozilla 的瀏覽器而提供的一個強大的 JavaScript 調試環境。本文將對Venkman 做一個簡單的介紹。
環境:Mozilla Firefox 1.0.4
JavaScript Dubugger 0.9.84 (此為Venkman 的代號)
第一步就是給 Firefox 安裝此插件。
安裝好后重啟一下 Firefox,就可在菜單工具 -> JavaScript Debugger 點擊來運行 Venkman。
Venkman 界面如下:
第二步,我們來寫一個有錯誤的代碼:
一個名為 Test.js 的 JavaScript 腳本文件。



2

3

一個名為 Test.html 的網頁文件。

2

3

4

5

6

7

8

我們可以看到在 Test.js 中的方法 test(str) 中有個不易被發覺得錯誤”alert(Src)”
這個 Src ,我們并沒有聲明過,像這種誤打在平時的寫代碼過程中經常有這種問題。好,我們來看看 Venkman 是如何來捕捉這個 Bug 的。
你可以在 Venkman 中打開這個 Test.js 文件,也可以不用打開,因為在你打開了 Venkman 后,用 Firefox 執行任何帶有 JavaScript 的網頁,如果發生錯誤或者異常,Venkman 都會自動打開 這個 出錯的腳本文件。當然前提是你已經對 Venkman 進行過設置了(Debug -> Error Triger -> Stop For Errors 和 Debug -> Throw Triger -> Sotp For Exceptions)。
第三步,用 Friefox 打開這個 Test.html 文件。你就會看到 Venkman 報告類似于如下的錯誤:
Stopped for error handler.
#0: function test(str=string:"Hello") in
001: function test(str) {
002: alert(Str);
Continuing from error handler.
Exception ``ReferenceError: Str is not defined'' thrown from function test(str=string:"Hello") in
[e] message = [string] "Str is not defined"
Stopped for thrown exception.
#0: function test(str=string:"Hello") in
001: function test(str) {
002: alert(Str);
Continuing from thrown exception.
Error ``ReferenceError: Str is not defined'' [xs] in file ``
其中可以很清除的看到 Str 是未聲明過的。
呵呵,這個 JavaScript 調試器的確很強大,在這里只不過做一個簡單的介紹罷了。