JavaScript 調(diào)試

2018-09-28 18:05 更新

調(diào)試

當你寫程序的時候很有可能出現(xiàn)錯誤,這在腳本中被稱為一個bug。

發(fā)現(xiàn)和修復 bug 的過程叫做調(diào)試,是一個正常的開發(fā)過程的一部分。本節(jié)討論的工具和技術(shù),可以幫助您進行任務調(diào)試。

IE 瀏覽器里面的錯誤信息

跟蹤錯誤的最基本的方法是在您的瀏覽器中打開錯誤信息。默認情況下,當一個錯誤發(fā)生在頁面,Internet Explorer 在狀態(tài)欄顯示錯誤圖標:

image1

雙擊這個圖標將您帶到一個對話框,這個對話框?qū)@示發(fā)生的特定的錯誤信息。

因為這個圖標很容易忽視,當發(fā)生錯誤時,Internet Explorer 提供了選項自動顯示錯誤對話框。

要啟用這個選項,選擇 Tools --> Internet Options --> Advanced tab。最后通過檢查顯示一個關于每一個腳本錯誤框的通知,選項如下所示:

image2

在 Mozilla 或 Firefox 里的錯誤消息

火狐 Netscape 和 Mozilla 等瀏覽器將錯誤消息發(fā)送到一個叫做 JavaScript 控制臺或錯誤控制臺的特殊窗口。查看控制臺,選擇 Tools-->Error Consol or Web Development。

不幸的是,因為這些瀏覽器在一個錯誤發(fā)生時,沒有給出視覺的標示,你必須保持打開控制臺,才能看您的腳本執(zhí)行的錯誤。

image3

錯誤通知

錯誤通知,出現(xiàn)在控制臺或通過 IE 瀏覽器對話框里的錯誤是語法和運行時錯誤的結(jié)果。這些錯誤通知會顯示錯誤所在的行號當錯誤發(fā)生時。
如果您使用的是 Firefox瀏覽器,那么你可以點擊在錯誤控制臺腳本中可以獲得的錯誤從而到達有錯誤的那一行。

如何調(diào)試腳本

有多種方法來調(diào)試 JavaScript

用一個 JavaScript 驗證器

檢查您的 JavaScript 代碼出現(xiàn)的奇怪的錯誤的一種方法是通過程序來運行它,檢查它以確保它是有效的。這是官方語言的語法規(guī)則。這些程序被稱為驗證解析器,也可以簡稱為驗證器,通常是存在于商業(yè)HTML和JavaScript編輯器。

最方便的 JavaScript 驗證器是 Douglas Crockford's JavaScript Lint,Douglas Crockford's JavaScript Lint 可以免費在線使用。

簡單地訪問這個網(wǎng)頁,將 JavaScript 代碼(只有 JavaScript )粘貼到文本區(qū)域,并單擊 jslint 按鈕。這個程序?qū)⑼ㄟ^您的 JavaScript 代碼解析,確保任何變量和函數(shù)定義遵循正確的語法。它還將檢查 JavaScript 語句,比如 if 和 whil e語句,以確保他們也遵循正確的格式

添加調(diào)試代碼到您的程序

您可以在你的程序中使用 alert() 或 document . write() 方法去調(diào)試你的代碼。例如,你應該這樣寫:

    var debugging = true;
    var whichImage = "widget";
    if( debugging )
       alert( "Calls swapImage() with argument: " + whichImage );
    var swapStatus = swapImage( whichImage );
    if( debugging )
       alert( "Exits swapImage() with swapStatus=" + swapStatus );

當他們出現(xiàn)的時候,通過檢測程序內(nèi)容和alert()s的命令,你可以非常容易的確定你的程序是否有錯誤。

使用一個JavaScript調(diào)試器

調(diào)試器是一個應用程序,該應用程序確保各種各樣的腳本在程序員的控制下執(zhí)行。腳本調(diào)試器通過一個界面提供細粒度的控制的狀態(tài),允許您檢查和設置值以及控制流執(zhí)行。

一旦一個腳本被加載到一個調(diào)試器,它可以每次運行一行或指示停止在某個斷點。一旦停止執(zhí)行,程序員可以檢查腳本和它的狀態(tài)變量,以確定是否有地方出了問題。你也可以觀察變量的變化值。

最新版本的 Mozilla JavaScript 調(diào)試器(代號為完 Venkman )Mozilla 和 Netscape 瀏覽器可以下載http://www.hacksrus.com/~ginda/venkman

對開發(fā)人員有用的技巧

這里有幾個技巧,您可以使用在你的腳本中用于減少錯誤的數(shù)量,同時使調(diào)試過程更容易一些。

  • 記住要使用大量的注釋。注釋使您能夠解釋為什么你以這樣的方式書寫腳本和解釋特別困難的部分代碼。
  • 總是使用縮進,使代碼易于閱讀。縮進語句也使你更容易匹配開始和結(jié)束標記,花括號和其他 HTML 和腳本元素。
  • 編寫模塊代碼。只要有可能,用函數(shù)的形式來組織你的語句。函數(shù)使你能夠阻止相關語句,并以最小的努力測試和重用的部分代碼以。
  • 命名變量和函數(shù)的方法要一致。嘗試使用足夠長的時間有意義的名稱,描述的內(nèi)容變量或函數(shù)的目的。
  • 命名變量和函數(shù)時使用一致的語法。換句話說,讓他們所有的小寫或大寫;如果你喜歡 Camel-Back 符號,一致地使用它。
  • 以模塊化的方式測試長腳本。換句話說,不要試圖在編寫完成整個腳本之后再測試它的任何部分。寫一段,使它能夠工作之后,再添加代碼的下一部分。
  • 使用描述性的變量和函數(shù)名稱和避免使用單個字符的名稱。
  • 注意你的引號。記住,引號用于對字符串和這兩個引號必須相同的風格(單引號或雙)。
  • 主義你的等于號。你不應該一個 = 用于比較的目的。
  • 聲明變量顯式地使用 var 關鍵字。
以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號