console.log(msg)
這個指令是在浏覽器控制台輸出日志.用來調試程式 跟alert 類似 但不像alert那樣會打斷程式.
在正常模式下,一般隻能向console 控制台輸出簡單的文字資訊。但為了把資訊輸出得更優雅更便于閱讀,除了cosole.log()方法外還可以調用 cosole.warn() 來輸出警告資訊,在控制台中出來的效果如下:

在輸出資訊前面會有一個帶感歎号的黃色三角警告符号。似乎比一般的console資訊要友好得多了。雖然圖示是黃色的,但輸出的文字仍然是黑色。
另外經常用到的是輸出錯誤資訊。可以通過調用console.erro() 來實作。
輸出的效果如下:
資訊前面會出現一個帶叉的紅色圓形圖示。
這個效果要比警告資訊更友好了,字型顔色成紅色了。
要更牛叉莫過于對文字應用樣式。而現在這一特性已經在谷歌浏覽器裡實作了。
在Chrome的開發者工具裡,console 可以加樣式,可以顯示缤紛的顔色,甚至圖檔。簡直爽翻了。
具體來說,是可以對輸出到console控制台的文字進行CSS控制。
格式如下:
console.log("%c需要輸出的資訊 ", "css 代碼");
下面是console.log() API的官方文檔摘要。
谷歌開發者中心上面關于谷歌浏覽器控制台console.log()的文檔:
Format Specifier | Description |
%s | Formats the value as a string. |
%d or %i | Formats the value as an integer. |
%f | Formats the value as a floating point value. |
%o | Formats the value as an expandable DOM element (as in the Elements panel). |
%O | Formats the value as an expandable JavaScript object. |
%c | Formats the output string according to CSS styles you provide. |
1.3D Text:
console.log("%c3D Text"," text-shadow: 0 1px 0 #ccc,0 2px 0 #c9c9c9,0 3px 0 #bbb,0 4px 0 #b9b9b9,0 5px 0 #aaa,0 6px 1px rgba(0,0,0,.1),0 0 5px rgba(0,0,0,.1),0 1px 3px rgba(0,0,0,.3),0 3px 5px rgba(0,0,0,.2),0 5px 10px rgba(0,0,0,.25),0 10px 10px rgba(0,0,0,.2),0 20px 20px rgba(0,0,0,.15);font-size:5em")
2.Colorful CSS
console.log("%cColorful CSS","background: rgba(252,234,187,1);background: -moz-linear-gradient(left, rgba(252,234,187,1) 0%, rgba(175,250,77,1) 12%, rgba(0,247,49,1) 28%, rgba(0,210,247,1) 39%,rgba(0,189,247,1) 51%, rgba(133,108,217,1) 64%, rgba(177,0,247,1) 78%, rgba(247,0,189,1) 87%, rgba(245,22,52,1) 100%);background: -webkit-gradient(left top, right top, color-stop(0%, rgba(252,234,187,1)), color-stop(12%, rgba(175,250,77,1)), color-stop(28%, rgba(0,247,49,1)), color-stop(39%, rgba(0,210,247,1)), color-stop(51%, rgba(0,189,247,1)), color-stop(64%, rgba(133,108,217,1)), color-stop(78%, rgba(177,0,247,1)), color-stop(87%, rgba(247,0,189,1)), color-stop(100%, rgba(245,22,52,1)));background: -webkit-linear-gradient(left, rgba(252,234,187,1) 0%, rgba(175,250,77,1) 12%, rgba(0,247,49,1) 28%, rgba(0,210,247,1) 39%, rgba(0,189,247,1) 51%, rgba(133,108,217,1) 64%, rgba(177,0,247,1) 78%, rgba(247,0,189,1) 87%, rgba(245,22,52,1) 100%);background: -o-linear-gradient(left, rgba(252,234,187,1) 0%, rgba(175,250,77,1) 12%, rgba(0,247,49,1) 28%, rgba(0,210,247,1) 39%, rgba(0,189,247,1) 51%, rgba(133,108,217,1) 64%, rgba(177,0,247,1) 78%, rgba(247,0,189,1) 87%, rgba(245,22,52,1) 100%);background: -ms-linear-gradient(left, rgba(252,234,187,1) 0%, rgba(175,250,77,1) 12%, rgba(0,247,49,1) 28%, rgba(0,210,247,1) 39%, rgba(0,189,247,1) 51%, rgba(133,108,217,1) 64%, rgba(177,0,247,1) 78%, rgba(247,0,189,1) 87%, rgba(245,22,52,1) 100%);background: linear-gradient(to right, rgba(252,234,187,1) 0%, rgba(175,250,77,1) 12%, rgba(0,247,49,1) 28%, rgba(0,210,247,1) 39%, rgba(0,189,247,1) 51%, rgba(133,108,217,1) 64%, rgba(177,0,247,1) 78%, rgba(247,0,189,1) 87%, rgba(245,22,52,1) 100%);filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fceabb', endColorstr='#f51634', GradientType=1 );font-size:5em")
3.Rainbow Text
console.log('%cRainbow Text ', 'background-image:-webkit-gradient( linear, left top, right top, color-stop(0, #f22), color-stop(0.15, #f2f), color-stop(0.3, #22f), color-stop(0.45, #2ff), color-stop(0.6, #2f2),color-stop(0.75, #2f2), color-stop(0.9, #ff2), color-stop(1, #f22) );color:transparent;-webkit-background-clip: text;font-size:5em;');
在Chrome控制台輸出圖檔
除了上面介紹的那些炫目的文字效果外,你還可以在Chrome控制台中顯示圖檔,自然地,顯示gif這樣的動态圖檔也是沒問題的。
還是應用差不多的代碼,隻是将内容變成指定背景為圖檔。
下面是一個例子:
console.log("%c", "padding:50px 300px;line-height:120px;background:url('http://wayouliu.duapp.com/img/tagsImg/youth.gif') no-repeat;");
相容性:
console雖然在調試中使用很友善,但是低版本的IE上不支援。
console.log 原先是 Firefox 的“專利”,嚴格說是安裝了 Firebugs 之後的 Firefox 所獨有的調試“絕招”。
這一招,IE8 學會了,不過用起來比 Firebugs 麻煩,隻有在開啟調試視窗(F12)的時候,console.log 才能出結果,不然就報錯。
今天看到 Opera 也有個叫 dragonfly 的東東,用這東西檢視 DOM,已經可以和 Firebug 媲美,然而還是不能用 console.log。于是有人就提供了這樣兩句代碼:
window.console = window.console || {};
console.log || (console.log = opera.postError);
API DOCS
https://developers.google.com/chrome-developer-tools/docs/console-api?hl=zh-CN
http://getfirebug.com/wiki/index.php/Console_API
http://msdn.microsoft.com/zh-cn/library/ie/gg589530(v=vs.85).aspx
相關教程:
http://www.cnblogs.com/Wayou/p/chrome_dev_tool_style_console.html
firefox console:
http://www.cnblogs.com/see7di/archive/2011/11/21/2257442.html