javascript調(diào)試說明
更新時間:2010年06月07日 23:31:13 作者:
自從AJAX崛起后,javascript的程序越來越龐大,不得不考慮到各種測試。
以前javascript對于IO的支持很弱,不能寫入相應(yīng)的文本文件中,而且異常對象Error也不統(tǒng)一,無法打印詳細(xì)的堆棧。自定義異常對象是個非常不討好的方法,因?yàn)橥ǔN覀冎豢吹狡鋗essage屬性,再者,其他自定義屬性需要用最慢的for...in循環(huán)遍歷出來。這時沒有辦法了,我們只有求助于瀏覽器的各種私有實(shí)現(xiàn),如firefox就有console.log。下面是console對象的方法列表,關(guān)于firebug更詳細(xì)的使用可見這篇文章。
firebug就自不多說了,IE8也有console.log,不過這需要按下F12,進(jìn)入調(diào)試模式時才有效,不然報(bào)錯。為了不報(bào)錯,平時我們應(yīng)該實(shí)現(xiàn)一個空對象來覆蓋它。
if (!window.console ){
window.console = {};
var methods = ["log", "debug", "info", "warn", "error", "assert", "dir", "dirxml",
"group", "groupEnd", "time", "timeEnd", "count", "trace", "profile", "profileEnd"],
noop = function(){}
for (var i = 0,method;method=methods[i++];)
window.console[method] = noop;
}
大概opera9.5x之后吧,多了一個叫Dragonfly的東東。顯然,它無法與firebug花樣繁多的日志輸出相比,它只提供了一個opera.postError方法。
if (window.opera && opera.postError) {
opera.postError(message);
}
safari也有console.log,它是基于其Web Inspector組件,感覺與firefox差不多,但我不是水果黨,不知道其方法有沒有firebug那么多……對于瀏覽器新貴chrome,現(xiàn)在我們可以在其擴(kuò)展程序搜索安裝firebug的chrome版本。
| 函數(shù) | 說明 |
|---|---|
| log(obj[, obj, ...]) | 向控制臺輸出一個信息。可以輸入多個參數(shù),輸出將已空格分隔各參數(shù)輸出。 第一參數(shù)可以包含格式化文本,例如: log(‘這里有%d個%s',count,apple); 字符串格式: %s:字符串。 %d, %i:數(shù)字。 %f: 浮點(diǎn)數(shù)。 %o -超鏈接對象。 |
| debug(obj[, obj, ...]) | 向控制臺輸出一個信息,信息包含一個超鏈接鏈接到輸出位置。 |
| info(obj[, obj, ...]) | 向控制臺輸出一個帶信息圖標(biāo)和背景顏色的信息,信息包含一個超鏈接鏈接到輸出位置。 |
| warn(obj[, obj, ...]) | 向控制臺輸出一個帶警告圖標(biāo)和背景顏色的信息,信息包含一個超鏈接鏈接到輸出位置。 |
| error(obj[, obj, ...]) | 向控制臺輸出一個帶錯誤圖標(biāo)和背景顏色的信息,信息包含一個超鏈接鏈接到輸出位置。 |
| assert(expression[, obj, ...]) | 測試一個表示是否為true,如果為false,提交一個例外信息到控制臺。 |
| dir(obj) | 列出對象的所有屬性。 |
| dirxml(node) | 列出HTML或XML Element的XML源樹。 |
| trace() | 輸出堆棧的調(diào)用入口。 |
| group(obj[, obj, ...]) | 將信息分組再輸出到控制臺。通過groupEnd()結(jié)束分組。 |
| groupEnd() | 結(jié)束分組輸出。 |
| time(name) | 創(chuàng)建一個名稱為name的計(jì)時器,計(jì)算代碼的執(zhí)行時間,調(diào)用timeEnd(name)停止計(jì)時器并輸出執(zhí)行時間。 |
| timeEnd(name) | 停止名稱為name的計(jì)時器并輸出執(zhí)行時間。 |
| profile([title]) | 開始對腳本進(jìn)行性能測試,title為測試標(biāo)題。 |
| profileEnd() | 結(jié)束性能測試。 |
| count([title]) | 計(jì)算代碼的執(zhí)行次數(shù)。titile作為輸出標(biāo)題。 |
firebug就自不多說了,IE8也有console.log,不過這需要按下F12,進(jìn)入調(diào)試模式時才有效,不然報(bào)錯。為了不報(bào)錯,平時我們應(yīng)該實(shí)現(xiàn)一個空對象來覆蓋它。
復(fù)制代碼 代碼如下:
if (!window.console ){
window.console = {};
var methods = ["log", "debug", "info", "warn", "error", "assert", "dir", "dirxml",
"group", "groupEnd", "time", "timeEnd", "count", "trace", "profile", "profileEnd"],
noop = function(){}
for (var i = 0,method;method=methods[i++];)
window.console[method] = noop;
}
大概opera9.5x之后吧,多了一個叫Dragonfly的東東。顯然,它無法與firebug花樣繁多的日志輸出相比,它只提供了一個opera.postError方法。
復(fù)制代碼 代碼如下:
if (window.opera && opera.postError) {
opera.postError(message);
}
safari也有console.log,它是基于其Web Inspector組件,感覺與firefox差不多,但我不是水果黨,不知道其方法有沒有firebug那么多……對于瀏覽器新貴chrome,現(xiàn)在我們可以在其擴(kuò)展程序搜索安裝firebug的chrome版本。
相關(guān)文章
javascript結(jié)合html5 canvas實(shí)現(xiàn)(可調(diào)畫筆顏色/粗細(xì)/橡皮)的涂鴉板
js+html5 canvas實(shí)現(xiàn)的涂鴉畫板特效,可調(diào)畫筆顏色|粗細(xì)|橡皮,可以保存涂鴉效果為圖片編碼,測試了下還不錯,感興趣的朋友可以參考下2013-04-04
JavaScript中的canvas?實(shí)現(xiàn)一個圓環(huán)漸變倒計(jì)時效果
這篇文章主要介紹了JavaScript中的canvas?實(shí)現(xiàn)一個圓環(huán)漸變倒計(jì)時效果,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下2022-09-09
js通過iframe加載外部網(wǎng)頁的實(shí)現(xiàn)代碼
這篇文章主要介紹了js通過iframe加載外部網(wǎng)頁的實(shí)現(xiàn)代碼,需要的朋友可以參考下2015-04-04
JavaScript中判斷數(shù)據(jù)類型的方法總結(jié)
比如要判斷一個變量是否是數(shù)組類型,PHP中有is_array()函數(shù)可以直接判斷,然而js中我們需要...-- well,下面我們就來詳細(xì)看一下JavaScript中判斷數(shù)據(jù)類型的方法總結(jié)2016-05-05
javascript的trim,ltrim,rtrim自定義函數(shù)
今天用到j(luò)avascript去掉一個文本框中字符串兩端的空格,開始還以為有trim,ltrim,rtrim函數(shù)(asp中有這三個函數(shù),弄混了),結(jié)果找半天,沒有找到。最后找到用正則實(shí)現(xiàn)這樣功能的自定義函數(shù)。2008-09-09
javascript實(shí)例分享---具有立體效果的圖片特效
此實(shí)例,直接粘貼代碼即可運(yùn)行,當(dāng)然圖片的路徑不要忘記改了。2014-06-06
JavaScript中的finally()方法和Filter()方法詳解
finally是 JavaScript 構(gòu)造中使用的方法try-catch,Filter() 是 JavaScript 中的一種方法,可以通過處理數(shù)組輕松提供過濾后的輸出數(shù)據(jù),本文就給大家詳細(xì)的介紹一下JavaScript中的finally()方法和Filter()方法,需要的朋友可以參考下2023-08-08
js+css實(shí)現(xiàn)文字散開重組動畫特效代碼分享
這篇文章主要介紹了js+css實(shí)現(xiàn)文字散開重組動畫特效,需要的朋友可以參考下2015-08-08

