console.log()是web开发人员工作中的好朋友。但是你知道控制台包含的不仅仅是console.log()吗?这篇文章要讨论的就是JavaScript中的控制台。
" Y7 W: F2 Y4 p, O" n 简介
' } W2 O' Q3 Q. w Web控制台是一个工具,主要用于记录与网页相关的信息,例如:网络请求、JavaScript安全错误、警告、CSS等。它使我们能够通过在网页内容中执行JavaScript表达式来与网页交互。
/ E) W9 c4 F! R3 x- g; u 控制台的类型
' d d/ J1 J* \8 r console.log() console.error() console.warn() console.clear() console.time() console.table() console.count() console.group()
% F# f* D/ X- R! w& ]1 D3 ~ 1. console.log() 7 @9 }4 F3 @% B2 D4 R8 M6 O" r7 B
主要用于将输出信息打印到控制台。log()中可以放入任何类型,无论是强类型、数组、对象、还是布尔值等。2 u7 V6 S; X0 [& Q3 y
//console.log() method
console.log('string')
console.log(800)
console.log(true)
console.log(null)
console.log(undefined)
console.log({a:1, b:2}) // object inside log()
console.log([1,2,3,4]) // array inside log()
7 K% `- a4 ~2 `) a( T4 D; U 2. console.error()
3 c. [7 ]/ B% v9 V% k 此方法用于将错误消息记录到控制台。在测试代码时很有用。默认情况下,错误消息将突出显示为红色。8 X8 y( V, R; R+ ]: o2 ?' g+ M9 M9 c
// console.error() method
console.error('This is a sample Error')
. ~, @& ~; g( [. r3 N
3. console.warn() & K1 [0 X# Q7 Y& k
用于将警告消息记录到控制台。默认情况下,警告消息将突出显示为黄色。 z4 E7 z0 v% u7 B2 i' U: F
// console.warn() method
console.warn('This is a sample Warning')
* ]) j: |, s7 C: Q3 E 4. console.clear()
2 y S2 U/ k0 w7 U) Q 用于清除控制台信息。清除控制台时,如果是基于Chromium的浏览器,将打印一个简单的叠加文本,如下面的截图所示“Console was cleared”,而在Firefox中,则不会返回任何消息。
, d( Z8 q" F) g+ t6 z( z$ B1 v // console.clear() method
console.clear()
& _$ W3 t1 K0 l 5. console.time()和console.timeEnd() & {9 \: g/ |! r3 z" J) U
无论何时我们想知道一段代码或一个函数所需要花费的时间,都可以使用JavaScript控制台对象提供的time()和timeEnd()方法。关键是要有一个必须相同的标签,而里面的代码可以是任何东西(函数、对象、甚至直接console.log()都可以)。2 V% W, m v2 x3 o5 k1 r+ E
// console.time() and console.timeEnd() method
// console.time() method
console.time("Let's see time console")
let time1 = function(){
console.log('time1 function is running')
}
let time2 = function(){
console.log('time2 function is running')
}
time1()
time2()
// console.timeEnd() method
console.timeEnd('Time Taken')
8 Q+ z7 W4 x& f: G: ]- U1 W
6. console.table() ) E- v* G# z* \& s# G3 D5 h
这个方法允许我们在控制台中生成表格。输入数据必须是数组或显示为表格的对象。
% z3 z2 H( h! G; B4 i0 j& o // console.table() method
console.table({a:1, b:2, c:3, d:4, e:5})
; i9 ~# ?! E: X3 X3 T6 s) E
7. console.count()
T" w! W; ?" i- }# e Z' M 这个方法在调用时会将数字(调用次数)写入到控制台。
6 C- M& Q6 L3 j1 q6 Y // console.count() method
console.log('This is a sample count')
for(let i=0; i<10; i++){
console.count('This is iteration number', i)
}
$ H# w( r' A6 d# ~( } 8. console.group()和console.groupEnd()
8 R8 ~& u& I8 _9 g: F 控制台对象的group()和groupEnd()方法允许我们将内容分组到单独的代码块中,并且这些代码块将缩进。和time()和timeEnd()一样,它们也接受值相同的标签。3 B F, _7 I) u" a. A
// console.group() and console.groupEnd() method
// console.group() method
console.group('This is a sample group')
console.log('This is a sample group log')
console.warn('This is a sample group warning')
console.error('This is a sample group error')
// console.groupEnd() method
console.groupEnd('This is a sample group')
console.log('This is a new section')
9 P- d; m' e8 S