轉載於: http://toutiao.com/news/6242781162012410370/
一、Firefox 插件之 Firebug, 火狐調試利器【初學必備】
為什么要第一個提到火狐呢?因為啊,這東西確實是太方便了,剛開始接觸開發那會兒,根本都不知道調試,只是憑着感覺去做事。后來看到有人在用Firefox 的 Firebug,一下就愛上了,原因如下。優點:1 中文;2 直觀;3 定位超級快!缺點:1 插件每次都需要重新下載;2 每次都要重新啟用才可以使用各種調試功能。
下面我們先看幾個主要功能模塊截圖,稍后稍細作解析!
. 控制台
.. 腳本調試
... 網絡收發狀況查看
里面主要用到的功能是,1. 控制台,可心直觀的看到一些頁面的基本情況,如上圖所示的錯誤信息,以及一些ajax的請求,很輕松的點開就可看到訪問的參數等等,基本上通過這里的調試,可以給你省去30%~40%的錯誤了;2. 腳本頁,如果js腳本比較復雜,那頁面js單步調試等功能就很有必要了,Firebug中有一個很好的搜索功能@多文件搜索,也就是說,你只要能說出其個別的關鍵詞,他就可以幫你找到具體在哪個腳本頁面哪一行。3. 網絡功能,用於查看各個頁面的具體請求情況很方便,用於定位哪個節點是否出問題是必須的,當然,多了解一點http協議對於這一塊的理解還是很有好處的。
二、Google Chrome 之F12自帶控制台【水平的進階】
Google作為W3C標准制定者之一(好像是的),是個絕對的W3C標准支持者,因此對於很多的標准屬性,在chrome都有很好的展現。但是有一點讓人很困惑,那就是整個頁面都是英文,描述也和咱中國人的習慣不太吻合,所以適合用於進階卻不適合用於初學,適合用於英語水平稍好點的同學(當然了,看習慣也就都一樣了)。優點:1 瀏覽器自帶;2 官方標准適合自己寫標准語法;3 功能齊全;4 控制台調試非常方便幾乎可以當作一個簡單的幫助文檔來使用!缺點:如前所述!
下面先看幾個截圖,稍后細作講解!
. 頁面元素查看
.. 網絡狀況查看
... 資源使用情況(腳本調試)
.... 控制台臨時運行
作為一個經驗稍微豐富點的開發人員,我認為chrome的調試是必備的,雖然有很多亂七八糟的英文,但我們還是可以克服的嘛,而且他功能特別齊全。基本功能和火狐的firebug差不多,不同的只是一個展現方式的不一樣,那我就說幾個特殊的或者前面沒有說到的點好了。1. 很方便地動態編輯html元素,從而避免反復改代碼調試的工作,同理於css樣式的編寫。寫html頁面我有一個不成熟想法:其實我不會寫什么頁面,我不過知道幾個標簽html,div,span和幾個css名稱display,position,font-size,然后我就不停在瀏覽器控制台里猜測各種想法,然后復雜的效果就出來了;2. 作為腳本調試,我本人還沒有習慣chrome的調試方式,不支持多文件搜索,這對於包含文件很多的地方並不是好事,不過你可以把所有的資源都打開,這時候再搜索就可以給你定位了;3. 適應他的網絡查看工具(點擊鏈接后具體信息在右邊展示,時間軸根據情況適當隱藏);4. 多利用控制台寫一些嘗試操作,對於已經加載了的全局變量,你可以直接在控制台使用,如要查看某元素高度,$('#ele').height;這里的'$'就是文檔中已經加載的jquery變量。5. 其他一些優化工具可以嘗試使用!(哈哈,我只是看並不用)
三、IE 工具之 httpwatch 【看個人喜好了】
其實,我基本上不會用IE去調試代碼的了,但是作為一個知名度不低的瀏覽器,以及名聲赫赫的httpwatch還是有必要了解一下的。優缺點自行判斷,我就說兩句就好。1. 功能強大,可以將訪問日志導出,在另外的地方進行靜態分析;2. 抓包,其實他就是干這個事的!3. IE的F12反正和其他的也差不多,簡單搞搞就行,反正我僅僅用來調試兼容性問題!
工欲善其事,必先利其器!只有有一個好的順手的調試工具幫助你,你才能更快地進行你的工作。當然,你最好有一些基礎理論知識,這對於你排查問題找方向會有很大的幫助!So, Debug your code, Debug yourself.
注:本文主要講web控制台調試,看起來好像全是前端工作,但是其實往往是和后端緊密相連的!一個字,去了你就知道了!