console.log()是web开发人员工作中的好朋友。但是你知道控制台包含的不仅仅是console.log()吗?这篇文章要讨论的就是JavaScript中的控制台。0 S6 x5 R6 z: F) b9 A
简介 ; J% W5 l6 ~$ d7 f. d: A9 r
Web控制台是一个工具,主要用于记录与网页相关的信息,例如:网络请求、JavaScript安全错误、警告、CSS等。它使我们能够通过在网页内容中执行JavaScript表达式来与网页交互。
& q: x4 O R I/ I& T! V 控制台的类型6 o: w% i9 y6 k4 S- x2 z
console.log() console.error() console.warn() console.clear() console.time() console.table() console.count() console.group()
* I7 h) U. i/ q4 J9 d/ N: g 1. console.log() ( Y1 o" }+ G6 |/ l' v8 Q
主要用于将输出信息打印到控制台。log()中可以放入任何类型,无论是强类型、数组、对象、还是布尔值等。
) {3 a* U1 ]; } //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()
0 o/ E0 X0 t) F 2. console.error()
1 D" Q1 {6 P. f/ p8 {5 B9 L7 f 此方法用于将错误消息记录到控制台。在测试代码时很有用。默认情况下,错误消息将突出显示为红色。# g) X. x* k* K7 B8 }: A/ B
// console.error() method
console.error('This is a sample Error')
/ f d K+ z: | 3. console.warn() & y4 N+ Z4 ^4 r2 [( n3 k# a% q! v
用于将警告消息记录到控制台。默认情况下,警告消息将突出显示为黄色。- k! z8 Z* L" Z2 g5 X/ m: p
// console.warn() method
console.warn('This is a sample Warning')
% H: O+ K3 G5 b9 L
4. console.clear()
/ k, }& q/ s7 H& g0 S 用于清除控制台信息。清除控制台时,如果是基于Chromium的浏览器,将打印一个简单的叠加文本,如下面的截图所示“Console was cleared”,而在Firefox中,则不会返回任何消息。
6 ^) J% r8 h2 o4 w& ~. c2 k1 t // console.clear() method
console.clear()
- W A4 d B4 \+ { 5. console.time()和console.timeEnd() 2 ^3 r4 v/ E# J2 i
无论何时我们想知道一段代码或一个函数所需要花费的时间,都可以使用JavaScript控制台对象提供的time()和timeEnd()方法。关键是要有一个必须相同的标签,而里面的代码可以是任何东西(函数、对象、甚至直接console.log()都可以)。
: b* v: }6 R4 X6 `. L5 v // 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')
* a y* R( l1 d) z' f4 l 6. console.table()
6 U6 C2 J9 j7 K: X! ]5 A 这个方法允许我们在控制台中生成表格。输入数据必须是数组或显示为表格的对象。
8 Z! j$ h+ W3 ~5 H( l$ K // console.table() method
console.table({a:1, b:2, c:3, d:4, e:5})
) L( X* n- _3 e/ E8 A# }+ k2 g) ]
7. console.count()
/ y$ x, n0 N5 l0 K7 f% R 这个方法在调用时会将数字(调用次数)写入到控制台。: d$ W2 a- o) T; w0 }& v; o# E6 I
// console.count() method
console.log('This is a sample count')
for(let i=0; i<10; i++){
console.count('This is iteration number', i)
}
+ `. [1 r1 l' I6 F2 s [ 8. console.group()和console.groupEnd() , S6 T( f) B! x/ X9 \! }0 z! {
控制台对象的group()和groupEnd()方法允许我们将内容分组到单独的代码块中,并且这些代码块将缩进。和time()和timeEnd()一样,它们也接受值相同的标签。
. Z( e: r" Q) G8 ^% f. v4 Y // 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')
$ V, \4 o/ Y0 t$ j1 D( W& ]8 K8 k! D