瀏覽器console的用法

自由、創新、研究、探索 Linux/Windows Mono/DotNet [ Open Source .NET Development/ 使用開源工具進行DotNet軟件開發]
銳意進取,志存高遠. 成就夢想,只爭朝夕. 從你開始,創新世界.【That I exist is a perpetual supprise which is life. Focus on eCommerce】

導航

<</a> 2017年5月 >
30 1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30 31 1 2 3
4 5 6 7 8 9 10
公告

Chrome 控制檯console的用法

你們都有用過各類類型的瀏覽器,每種瀏覽器都有本身的特點,本人拙見,在我用過的瀏覽器當中,我是最喜歡Chrome的,由於它對於調試腳本及前端設計調試都有它比其它瀏覽器有過之而無不及的地方。可能你們對console.log會有必定的瞭解,內心不免會想調試的時候用alert不就好了,幹嗎還要用console.log這麼一長串的字符串來替代alert輸出信息呢,下面我就介紹一些調試的入門技巧,讓你愛上console.logphp

先的簡單介紹一下chrome的控制檯,打開chrome瀏覽器,按f12就能夠輕鬆的打開控制檯css

你們能夠看到控制檯裏面有一首詩還有其它信息,若是想清空控制檯,能夠點擊左上角那個來清空,固然也能夠經過在控制檯輸入console.clear()來實現清空控制檯信息。以下圖所示
html

如今假設一個場景,若是一個數組裏面有成百上千的元素,可是你想知道每一個元素具體的值,這時候想一想若是你用alert那將是多慘的一件事情,由於alert阻斷線程運行,你不點擊alert框的肯定按鈕下一個alert就不會出現。前端

下面咱們用console.log來替換,感覺一下它的魅力。java

看了上面這張圖,是否是認識到log的強大之處了,下面咱們來看看console裏面具體提供了哪些方法能夠供咱們平時調試時使用。node

目前控制檯方法和屬性有:linux

["$$", "$x", "dir", "dirxml", "keys", "values", "profile", "profileEnd", "monitorEvents", "unmonitorEvents", "inspect", "copy", "clear", "getEventListeners", "undebug", "monitor", "unmonitor", "table", "$0", "$1", "$2", "$3", "$4", "$_"]

下面咱們來一一介紹一下各個方法主要的用途。git

通常狀況下咱們用來輸入信息的方法主要是用到以下四個程序員

一、console.log 用於輸出普通訊息

二、console.info 用於輸出提示性信息

三、console.error用於輸出錯誤信息

四、console.warn用於輸出警示信息

用圖來講話

五、console.group輸出一組信息的開頭

六、console.groupEnd結束一組輸出信息

看你需求選擇不一樣的輸出方法來使用,若是上述四個方法再配合group和groupEnd方法來一塊兒使用就能夠輸入各類各樣的不一樣形式的輸出信息。

哈哈,是否是以爲很神奇呀!

七、console.assert對輸入的表達式進行斷言,只有表達式爲false時,才輸出相應的信息到控制檯

八、console.count(這個方法很是實用哦)當你想統計代碼被執行的次數

九、console.dir(這個方法是我常用的 可不知道比for in方便了多少) 直接將該DOM結點以DOM樹的結構進行輸出,能夠詳細查對象的方法發展等等

十、console.time 計時開始

十一、console.timeEnd  計時結束(看了下面的圖你瞬間就感覺到它的厲害了)

十二、console.profileconsole.profileEnd配合一塊兒使用來查看CPU使用相關信息

在Profiles面板裏面查看就能夠看到cpu相關使用信息

1三、console.timeLineconsole.timeLineEnd配合一塊兒記錄一段時間軸

1四、console.trace  堆棧跟蹤相關的調試

上述方法只是我我的理解罷了。若是想查看具體API,能夠上官方看看,具體地址爲:https://developer.chrome.com/devtools/docs/console-api

 

下面介紹一下控制檯的一些快捷鍵

一、方向鍵盤的上下鍵,你們一用就知曉。好比用上鍵就至關於使用上次在控制檯的輸入符號

二、$_命令返回最近一次表達式執行的結果,功能跟按向上的方向鍵再回車是同樣的

上面的$_須要領悟其奧義才能使用得當,而0 4則表明了最近5個你選擇過的DOM節點。

什麼意思?在頁面右擊選擇審查元素,而後在彈出來的DOM結點樹上面隨便點選,這些被點過的節點會被記錄下來,而$0會返回最近一次點選的DOM結點,以此類推,$1返回的是上上次點選的DOM節點,最多保存了5個,若是不夠5個,則返回undefined

三、Chrome 控制檯中原生支持類jQuery的選擇器,也就是說你能夠用$加上熟悉的css選擇器來選擇DOM節點

四、copy經過此命令能夠將在控制檯獲取到的內容複製到剪貼板

(哈哈 剛剛從控制檯複製的body裏面的html能夠任意粘貼到哪 好比記事本  是否是以爲功能很強大)

五、keys和values 前者返回傳入對象全部屬性名組成的數據,後者返回全部屬性值組成的數組

說到這,難免想起console.table方法了

 

 

六、monitor & unmonitor

monitor(function),它接收一個函數名做爲參數,好比function a,每次a被執行了,都會在控制檯輸出一條信息,裏面包含了函數的名稱a及執行時所傳入的參數。

而unmonitor(function)即是用來中止這一監聽。

看了這張圖,應該明白了,也就是說在monitor和unmonitor中間的代碼,執行的時候會在控制檯輸出一條信息,裏面包含了函數的名稱a及執行時所傳入的參數。當解除監視(也就是執行unmonitor時)就再也不在控制檯輸出信息了。

$ // 簡單理解就是 document.querySelector 而已。 $$ // 簡單理解就是 document.querySelectorAll 而已。 $_ // 是上一個表達式的值 $0-$4 // 是最近5個Elements面板選中的DOM元素,待會會講。 dir // 其實就是 console.dir keys // 取對象的鍵名, 返回鍵名組成的數組 values // 去對象的值, 返回值組成的數組

 

下面看一下console.log的一些技巧

一、重寫console.log 改變輸出文字的樣式

二、利用控制檯輸出圖片

三、指定輸出文字的樣式

 最後說一下chrome控制檯一個簡單的操做,如何查看頁面元素,看下圖就知道了

你在控制檯簡單操做一遍就知道了,是否是以爲很簡單!

 
分類:  [15]Dev Tools
標籤:  javascript chrome
posted on  2014-11-23 21:06  HackerVirus  閱讀( 21294) 評論( 4  編輯  收藏
評論
  • huanglike    Posted @    2015-12-11 10:39
    真心好,很實用,很強大!
      
  • zer    Posted @    2016-02-08 15:14
    博主 講解的很好 ~之前一直當簡單的打印信息用。漲經驗了 謝謝
      
  • web全端小屋    Posted @    2016-07-25 14:10
    煩惱歌_這要亮了
      
  • web全端小屋    Posted @    2016-07-25 17:31
    下面看一下console.log的一些技巧
    一、重寫console.log 改變輸出文字的樣式 
    二、利用控制檯輸出圖片 
    三、指定輸出文字的樣式
    這塊感受就不必了,控制檯敲那麼多css代碼容易出錯,仍是到DW或Sublime裏面寫比較合適。

    console.profile和console.profileEnd圖看不大懂,
    console.timeLine和console.timeLineEnd 、monitor & unmonitor有什麼好處,特別是monitor & unmonitor感受沒用啊
      
註冊用戶登陸後才能發表評論,請  登陸  或  註冊訪問網站首頁。
udacity
阿里雲C2
歷史上的今天:
2013-11-23  用ASP.net判斷上傳文件類型的三種方法
2013-11-23  C#中利用JQuery實現視頻網站
2013-11-23  雲計算和大數據
2013-11-23  github上寫我的簡歷
2013-11-23  系統小結
2013-11-23  ASP.NET中使用HttpWebRequest調用WCF
2013-11-23  什麼是Angular JS?
2013-11-23  System.Net.Http 簡介
2013-11-23  分享完整的項目工程目錄結構
2013-11-23  2014年糯米網校
2013-11-23  高併發非自增ID如何設計?
2013-11-23  Asp.Net中使用Couchbase——Memcached緩存使用篇
2013-11-23  協做圖(通訊圖)collaboration diagram
2013-11-23  Hadoop企業級應用
2013-11-23  將網站固定到開始菜單,自定義圖標、顏色和Windows推送通知
2013-11-23  Caliburn Micro框架
2012-11-23  LINQ框架
2011-11-23  極速理解設計模式系列
2011-11-23  .Net下的MIS系統架構設計系列-和-Asp.Net大型項目實踐
2011-11-23  MS CRM 2011的自定義和開發—CRM web服務介紹——IDiscoveryService
2011-11-23  Knockout簡介 (Introduction)
2011-11-23  最鋒利的Visual Studio Web開發工具擴展:Web Essentials詳解
2010-11-23  C# IEnumerable、IEnumerator、List、ArrayList、[]數組各各的區別
2010-11-23  ActiveWriter Preview 4.1 for VS2008
2010-11-23  [轉]ActiveWriter----集成到VS.NET的NHibernate(ActiveRecord)對象可視化設計工具
Powered by: 
博客園 
Copyright © HackerVirus
相關文章
相關標籤/搜索