如何在網頁中調試JavaScript

來源:互聯網
上載者:User
說明:譯文中提到了一些調試工具,都給出了下載連結,csdn上連結效果不顯著,需要滑鼠放上去才可見 有許多方式可以調試 JavaScript。我們首先從代碼本身討論一下:

  • 插入 alert 進入代碼是最常見的方式,可以提示變數的值、類型,函數參數,對象屬性。如果你用分支代碼以支援分別做不同的事,你可以使用 confirm 來強制執行指定的分支功能。如果你想能夠剪下粘貼結果可使用 prompt
  • 要想得到更詳細的錯誤報表你可以使用 window.onerrortry..catch 語句。這會讓代碼直接運行,不會因某個錯誤而終止掛起,從而在代碼執行完成後報告出所有的錯誤。
  • 有些錯誤在我們不知不覺中進入我們的代碼,並且難於發現。我們要嚴格遵守代碼約定,如用分號顯式地結束語句而不是用分號插入;總是使用花括弧把控制結構括起來如 if, if..else, switch, while, do..while, for, for..in 語句; 使用圓括弧來表示優先而不是靠運算子本身的優先等組;使用統一的詳細的命名規則;使用統一的代碼縮排規則讓源碼更易讀;使用顯式的型別宣告避免自動類型或者采別的方式達到同樣效果;對於不同的瀏覽器有些簡便的方式(特別是 ie),盡量使用符合標準文法的代碼……。通過以上方式減少這些難以發現的錯誤產生。
  • 可以通過 js lint來運行代碼,它可以檢測某些潛在的錯誤。

以上是我們通過代碼本身做的事。下面我們看看在瀏覽器中代碼的檢測

  • 使用多個不同類型的瀏覽器測試你開發的角本。在windows環境中,至少要用到 ie6w、op7以及moz。在mac機中,要至少用到 saf、op7、ie5m和moz。如果存在代碼在一個或多個瀏覽器中不起作用,要看看換些不同的代碼能否解決。如果還不行,就要根據不同瀏覽器做一個分支執行代碼。
  • 在 ie中一定要啟用錯誤報表。如果使用的是 windows,可以利用 Microsoft Script Debugger。如果需跟蹤一個錯誤,你可以利用角本中的 debugger 關鍵字控制角本在偵錯模式下執行。推薦主要使用 ie 測試,用 op7 或 moz 來調試。
  • 在 Op7 當中,一定要啟用 在JavaScript Console 中 JavaScript 錯誤報表。Op7 的 JavaScript Console 遠比 ie 錯誤報表要好些,擁有更好的代碼跟蹤功能,更容易看到函數調用來源。並且可以報告出正確的錯誤行,不同於 iew 。
  • 在 moz 中有很多工具。可利用 Mozilla JavaScript Console,它可以報告錯誤和警告,並且允許做簡單的角本賦值。可以啟用嚴厲警告提示出許多潛在錯誤位置。可以使用 DOM Inspector 顯示 document 樹,stylesheets 樹,computed styles,JavaScript 對象。可以用 Venkman (Mozilla JavaScript Debugger)擷取更進階的 JavaScript 調試工具。可供使用的有 Ian Hickson's JavaScript Evaluation Sidebar 或者 Jesse Ruderman's JavaScript Environment、view scripts bookmarklet、JavaScript Shell 或者 view variables bookmarklet 或者 ViewScripts bookmarklet 。
  • 在 konq 當中,靠自己的力量要更多些,使用一些原始碼的技巧。
  • 在 saf 中需要啟用隱藏調試菜單(Hiden debug menu),不用在系統控制台顯示毫無意義的錯誤資訊,使用 Show DOM Tree 功能會更有用。如果你啟用了顯示調試菜單,Safari不運行,在終端使用下面的命令:代碼:
    defaults write com.apple.Safari IncludeDebugMenu 1

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.