[FE] console對(duì)象

1. 實(shí)例方法

Console規(guī)范中贴谎,console總共有17個(gè)方法,
以下是console對(duì)象的IDL植兰,

[Exposed=(Window,Worker,Worklet)]
namespace console { // but see namespace object requirements below
    // Logging
    void assert(optional boolean condition = false, any... data);
    void clear();
    void count(optional DOMString label = "default");
    void debug(any... data);
    void error(any... data);
    void info(any... data);
    void log(any... data);
    void table(any tabularData, optional sequence<DOMString> properties);
    void trace(any... data);
    void warn(any... data);
    void dir(any item, optional object? options);
    void dirxml(any... data);

    // Grouping
    void group(any... data);
    void groupCollapsed(any... data);
    void groupEnd();

    // Timing
    void time(optional DOMString label = "default");
    void timeEnd(optional DOMString label = "default");
};

在Chrome 59.0.3071.115 中万俗,console總共有17+7個(gè)方法,

assert clear count debug dir dirxml error group groupCollapsed groupEnd info log markTimeline memory profile profileEnd table time timeEnd timeStamp timeline timelineEnd trace warn

在Safari 10.1.1 (12603.2.4) 中漓骚,有17+4個(gè)蝌衔,

assert clear count debug dir dirxml error group groupCollapsed groupEnd info log profile profileEnd table takeHeapSnapshot time timeEnd timeStamp trace warn

在Firefox 55.0.1 中,有17+4個(gè)蝌蹂,

assert clear count debug dir dirxml error exception group groupCollapsed groupEnd info log profile profileEnd table time timeEnd timeStamp trace warn

2. Logging

2.1 assert

功能:
如果斷言失敗噩斟,就在控制臺(tái)上打印消息,否則就略過孤个。

語(yǔ)法:

console.assert(assertion, obj1 [, obj2, ..., objN]);
console.assert(assertion, msg [, subst1, ..., substN]); // c-like message formatting

參數(shù)解釋:
(1)assertion剃允,是任意的布爾值表達(dá)式,如果是一個(gè)假值,就在控制臺(tái)上顯示消息斥废。
(2)obj1 ... objN椒楣,控制臺(tái)上可以輸出一系列對(duì)象。
(3)msg牡肉,一個(gè)模板字符串捧灰,其中可以包含一些表示格式的字符。
(4)subst1 ... substN荚板,一些用于替換msg中格式字符的對(duì)象凤壁。

注:
(1)console.assert可用于Web Workers中。
(2)console.assert在node中的實(shí)現(xiàn)與瀏覽器不同跪另,
在瀏覽器中,調(diào)用console.assert(false)會(huì)在控制臺(tái)上打印一條出錯(cuò)消息煤搜,但是不會(huì)影響后續(xù)代碼執(zhí)行免绿,
在node中,調(diào)用console.assert(false)會(huì)拋出AssertionError異常擦盾。
(3)msg是一個(gè)模板字符串嘲驾,其中可以包含如下格式字符,
%s迹卢,它的替換者將被轉(zhuǎn)換為字符串辽故,調(diào)用ToString(element)
%d%i,它的替換者將被轉(zhuǎn)換為整數(shù)腐碱,調(diào)用parseInt(element, 10)
%f誊垢,它的替換者將被轉(zhuǎn)換為浮點(diǎn)數(shù),調(diào)用parseFloat(element)
%c症见,它的替換者將被添加樣式喂走,例如,

console.log('%c error %c message ',
'color:#fff;background:red;',
'color:white;background:#ccc;')

此外谋作,還有%o表示optimally useful formatting芋肠,
%O表示generic JavaScript object formatting
可參考Common object formats

2.2 clear

功能:
清空控制臺(tái)遵蚜。

語(yǔ)法:

console.clear();

2.3 count

功能:
打印調(diào)用次數(shù)帖池。

語(yǔ)法:

console.count([label]);

參數(shù)解釋:
label,是一個(gè)可選的字符串吭净,
如果沒有提供睡汹,就打印當(dāng)前行的調(diào)用次數(shù),否則就打印指定label的調(diào)用次數(shù)攒钳。

2.4 debug

console.log帮孔。

2.5 error

功能:
在控制臺(tái)上打印一條錯(cuò)誤消息。

語(yǔ)法:

console.error(obj1 [, obj2, ..., objN]);
console.error(msg [, subst1, ..., substN]);

參數(shù)解釋:
console.assert

注:
console.error可用于Web Workers中文兢。

2.6 info

功能:
在控制臺(tái)上打印一條information消息晤斩。

語(yǔ)法:

console.info(obj1 [, obj2, ..., objN]);
console.info(msg [, subst1, ..., substN]);

參數(shù)解釋:
console.assert

注:
(1)console.info可用于Web Workers中姆坚。

2.7 log

功能:
在控制臺(tái)上打印一條日志澳泵。

語(yǔ)法:

console.log(obj1 [, obj2, ..., objN]);
console.log(msg [, subst1, ..., substN]);

參數(shù)解釋:
console.assert

注:
console.log可用于Web Workers中兼呵。

2.8 table

功能:

語(yǔ)法:

console.table(data [, columns]);

參數(shù)解釋:
(1)data兔辅,必須是一個(gè)數(shù)組或者對(duì)象
(2)columns击喂,可選维苔,一個(gè)數(shù)組,用于表示列名懂昂。

注:
(1)console.table可用于Web Workers中介时。
(2)如果data是一個(gè)數(shù)組,則第一列的內(nèi)容是索引凌彬,第二列的內(nèi)容是相應(yīng)的值沸柔,
如果data是一個(gè)對(duì)象,則第一列的內(nèi)容是屬性名铲敛,第二列的內(nèi)容是相應(yīng)的屬性值褐澎。
(3)data還可以是一個(gè)復(fù)合對(duì)象,即伐蒋,二維數(shù)組工三,對(duì)象數(shù)組,值為數(shù)組的對(duì)象咽弦,值為對(duì)象的對(duì)象徒蟆,
此時(shí),table會(huì)變成多列(>2)型型,
對(duì)于二維數(shù)組段审,對(duì)象數(shù)組,第一列的內(nèi)容為索引闹蒜,
后面各列的名字為索引(二維數(shù)組)或?qū)傩悦▽?duì)象數(shù)組)寺枉,其內(nèi)容為相應(yīng)的值。
對(duì)于值為數(shù)組的對(duì)象绷落,值為對(duì)象的對(duì)象姥闪,第一列的內(nèi)容為屬性名,
后面各列的名字為索引(值為數(shù)組的對(duì)象)或?qū)傩悦ㄖ禐閷?duì)象的對(duì)象)砌烁,其內(nèi)容為相應(yīng)的值筐喳。

2.9 trace

功能:
在控制臺(tái)上打印調(diào)用棧催式。

語(yǔ)法:

console.trace();

2.10 warn

功能:
在控制臺(tái)上打印一條警告。

語(yǔ)法:

console.warn(obj1 [, obj2, ..., objN]);
console.warn(msg [, subst1, ..., substN]);

參數(shù)解釋:
console.assert避归。

注:
console.warn可用于Web Workers中荣月。

2.11 dir

功能:
在控制臺(tái)上以交互式的方式,打印指定對(duì)象的屬性梳毙。

語(yǔ)法:

console.dir(object);

參數(shù)解釋:
object哺窄,一個(gè)js對(duì)象。

注:
console.dir可用于Web Workers中账锹。

2.11 dirxml

功能:
在控制臺(tái)上以交互式的方式萌业,打印指定xml/html元素的樹型結(jié)構(gòu)。

語(yǔ)法:

console.dirxml(object);

參數(shù)解釋:
object奸柬,一個(gè)js對(duì)象生年。

3. Grouping

3.1 group

功能:
在控制臺(tái)上增加一個(gè)縮進(jìn)層次,打印一條消息廓奕,
后續(xù)所有消息晶框,都在這個(gè)新縮進(jìn)層次中輸出。

語(yǔ)法:

console.group([label]);

參數(shù)解釋:
label懂从,可選,縮進(jìn)層的名字蹲蒲。

注:
console.group可用于Web Workers中番甩。

3.2 groupCollapsed

功能:
console.group
不同的是届搁,縮進(jìn)層默認(rèn)折疊缘薛,用戶需要手動(dòng)展開。

語(yǔ)法:

console.groupCollapsed([label]);

參數(shù)解釋:
label卡睦,縮進(jìn)層的名字宴胧。

注:
console.groupCollapsed可用于Web Workers中。

3.3 groupEnd

功能:
退出當(dāng)前的縮進(jìn)層次表锻,回到上一層恕齐。

語(yǔ)法:

console.groupEnd();

注:
console.groupEnd可用于Web Workers中。

4. Timing

4.1 time

功能:
啟動(dòng)一個(gè)計(jì)時(shí)器瞬逊,可以用來跟蹤某個(gè)任務(wù)显歧。
每個(gè)計(jì)時(shí)器可以給定一個(gè)名字,每個(gè)頁(yè)面可以至少包含10000個(gè)計(jì)時(shí)器确镊,
使用指定的計(jì)時(shí)器名調(diào)用console.timeEnd士骤,會(huì)在控制臺(tái)輸出該計(jì)時(shí)器中記錄的時(shí)間,單位是毫秒蕾域。

語(yǔ)法:

console.time(label);

參數(shù)解釋:
label拷肌,計(jì)時(shí)器的名字,用于唯一標(biāo)識(shí)該計(jì)時(shí)器。

注:
console.time可用于Web Workers中巨缘。

4.2 timeEnd

功能:
停止指定的計(jì)時(shí)器添忘,并在控制臺(tái)上輸出該計(jì)時(shí)器中記錄的時(shí)間,單位是毫秒带猴。

語(yǔ)法:

console.timeEnd(label);

參數(shù)解釋:
label昔汉,指定計(jì)時(shí)器的名字。

注:
console.timeEnd可用于Web Workers中拴清。


參考

MDN - Console
Console - Living Standard

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末靶病,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子口予,更是在濱河造成了極大的恐慌娄周,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,084評(píng)論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件沪停,死亡現(xiàn)場(chǎng)離奇詭異煤辨,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)木张,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,623評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門众辨,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人舷礼,你說我怎么就攤上這事鹃彻。” “怎么了妻献?”我有些...
    開封第一講書人閱讀 163,450評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵蛛株,是天一觀的道長(zhǎng)。 經(jīng)常有香客問我育拨,道長(zhǎng)谨履,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,322評(píng)論 1 293
  • 正文 為了忘掉前任熬丧,我火速辦了婚禮笋粟,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘锹引。我一直安慰自己矗钟,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,370評(píng)論 6 390
  • 文/花漫 我一把揭開白布嫌变。 她就那樣靜靜地躺著吨艇,像睡著了一般。 火紅的嫁衣襯著肌膚如雪腾啥。 梳的紋絲不亂的頭發(fā)上东涡,一...
    開封第一講書人閱讀 51,274評(píng)論 1 300
  • 那天冯吓,我揣著相機(jī)與錄音,去河邊找鬼疮跑。 笑死组贺,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的祖娘。 我是一名探鬼主播失尖,決...
    沈念sama閱讀 40,126評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼渐苏!你這毒婦竟也來了掀潮?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,980評(píng)論 0 275
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤琼富,失蹤者是張志新(化名)和其女友劉穎仪吧,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體鞠眉,經(jīng)...
    沈念sama閱讀 45,414評(píng)論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡薯鼠,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,599評(píng)論 3 334
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了械蹋。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片出皇。...
    茶點(diǎn)故事閱讀 39,773評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖哗戈,靈堂內(nèi)的尸體忽然破棺而出恶迈,到底是詐尸還是另有隱情,我是刑警寧澤谱醇,帶...
    沈念sama閱讀 35,470評(píng)論 5 344
  • 正文 年R本政府宣布,位于F島的核電站步做,受9級(jí)特大地震影響副渴,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜全度,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,080評(píng)論 3 327
  • 文/蒙蒙 一煮剧、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧将鸵,春花似錦勉盅、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,713評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至痒筒,卻和暖如春宰闰,著一層夾襖步出監(jiān)牢的瞬間茬贵,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,852評(píng)論 1 269
  • 我被黑心中介騙來泰國(guó)打工移袍, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留解藻,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 47,865評(píng)論 2 370
  • 正文 我出身青樓葡盗,卻偏偏與公主長(zhǎng)得像螟左,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子觅够,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,689評(píng)論 2 354

推薦閱讀更多精彩內(nèi)容

  • https://nodejs.org/api/documentation.html 工具模塊 Assert 測(cè)試 ...
    KeKeMars閱讀 6,331評(píng)論 0 6
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語(yǔ)法胶背,類相關(guān)的語(yǔ)法,內(nèi)部類的語(yǔ)法蔚约,繼承相關(guān)的語(yǔ)法奄妨,異常的語(yǔ)法,線程的語(yǔ)...
    子非魚_t_閱讀 31,625評(píng)論 18 399
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理苹祟,服務(wù)發(fā)現(xiàn)砸抛,斷路器,智...
    卡卡羅2017閱讀 134,654評(píng)論 18 139
  • 參考基礎(chǔ)教程的整理树枫,方便記憶 一直焙、Object對(duì)象 (O大寫) 所有其他對(duì)象都繼承自這個(gè)對(duì)象。Object本身也是...
    Viaphlyn閱讀 2,320評(píng)論 0 0
  • 第一部分 準(zhǔn)入訓(xùn)練 第1章 進(jìn)入忍者世界 js開發(fā)人員通常使用js庫(kù)來實(shí)現(xiàn)通用和可重用的功能砂轻。這些庫(kù)需要簡(jiǎn)單易用奔誓,...
    如201608閱讀 1,351評(píng)論 1 2