Web開發經驗談之F12開發者工具/Web控制臺臺調試

ha44g0v1 8年前發布 | 132K 次閱讀 Web開發 程序調試

來自: http://www.cnblogs.com/yougewe/p/5152700.html

引語:如今的整個Web開發行業甚至說整個軟件開發行業,已經相當成熟,基本上已經很少找不到沒有前人做過的東西了,或者換句話說,你想要實現的功能,你總能在某個地方搜索到答案,關鍵是你有沒有這個時間精力去搜尋!以至于大多數的開發,其實就是一個找資料的過程,一個復制粘貼的過程,這的確也是一個可悲的現象。不過,換個角度來看,其實也挺好,現在咱們凡事都講求一個效率問題,只要能實現功能,就甭管他復制粘貼抄襲了。問題的關鍵是,你也要能復制、粘貼、抄襲啊!難道有人給了你所有的配件你就能把車子給組裝起來?難道有人送你一輛好車你就會改裝了?然并卵,關鍵還得看你自己有幾斤幾兩了。

我記得我曾經有一位資深的運維同事給我說過一句話,叫做:所謂的開發不過是僅僅掌握了一些調試代碼的技巧而已。雖然我本人對于運維的工作也不怎么看得上眼,但是,不得不說,我很贊同他這句話。因為如今互聯網橫行的今天,有太多太多的參考,你可以實現所有你想實現的。但又正是因為有太多太多的參考,以至于我們都不知道選擇什么好,哪個是對的,哪個是錯的?誰說不是呢,沒有選擇是一種無奈,太多選擇總會讓人浮躁!

看本文標題,是講Web調試的,但是我估計廢話所占的篇幅不小,因為,哈哈,我TM就是一個喜歡來虛的的這么一個人!我所謂的虛的,是指理論級別的而非實戰級別。但是,我始終堅信,理論是實踐的基礎,實踐會加深真理論的認識!想成為一個真正的開發人員,我覺得,至少你得了解計算機它是怎么工作的。基礎知識真的是必不可少的,如:計算機原理,匯編,單片機,C,VB,VC,數據結構,經理算法!這些無疑都會加深你對理論的了解!

好,廢話已經太多。下面進入正題,作為Web開發者,Web調試工具自然是必不可少的。那么,我們就來聊聊Chrome,FireFox,IE三大家的Web調試的一些特點(雖然市面有數不清的瀏覽器,但是糾其內核,基本都是這三者之一 ) ,以及都有哪些技巧?

一、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控制臺調試,看起來來好像全是前端工作,但是其實往往是后端緊密相連的!一個字,去了你就知道了!

</div>

 本文由用戶 ha44g0v1 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!