console.log()是web开发人员工作中的好朋友。但是你知道控制台包含的不仅仅是console.log()吗?这篇文章要讨论的就是JavaScript中的控制台。
: Z/ J" Q% b+ d; h8 L" a; p 简介
' q; @8 b2 B& ~6 \1 w4 ~; E2 J+ u Web控制台是一个工具,主要用于记录与网页相关的信息,例如:网络请求、JavaScript安全错误、警告、CSS等。它使我们能够通过在网页内容中执行JavaScript表达式来与网页交互。; [* n4 k, s2 b& r# U8 p, k3 o: w
控制台的类型- O9 L. n7 n' ~2 O: u
console.log() console.error() console.warn() console.clear() console.time() console.table() console.count() console.group()$ c& ]6 n; F3 q1 R9 c
1. console.log() ; T& E/ ^2 p; ~, \( ^" N" g8 ], Z
主要用于将输出信息打印到控制台。log()中可以放入任何类型,无论是强类型、数组、对象、还是布尔值等。' L" g6 a5 l/ C
//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 p9 L9 }8 v) ]2 b; n$ d
2. console.error()
8 o- b8 y" L, Y( d) g 此方法用于将错误消息记录到控制台。在测试代码时很有用。默认情况下,错误消息将突出显示为红色。
, f5 t4 v4 y8 L* A# z // console.error() method
console.error('This is a sample Error')
! e7 H, i$ n: R% q. Z
3. console.warn() - N" O3 n" _( l( g' Y
用于将警告消息记录到控制台。默认情况下,警告消息将突出显示为黄色。+ }2 m" {3 b- a& E
// console.warn() method
console.warn('This is a sample Warning')
D' N% _; K% I/ S 4. console.clear()
! \1 P: ]) D: n5 m3 B& P- _ 用于清除控制台信息。清除控制台时,如果是基于Chromium的浏览器,将打印一个简单的叠加文本,如下面的截图所示“Console was cleared”,而在Firefox中,则不会返回任何消息。1 @4 {' N) Q. G9 r" H6 K1 f/ W8 Z
// console.clear() method
console.clear()
0 h! _% Z. q1 y6 h0 t; \; t
5. console.time()和console.timeEnd() ) Q& a( d6 }3 ^
无论何时我们想知道一段代码或一个函数所需要花费的时间,都可以使用JavaScript控制台对象提供的time()和timeEnd()方法。关键是要有一个必须相同的标签,而里面的代码可以是任何东西(函数、对象、甚至直接console.log()都可以)。
$ U7 F$ R/ n* D7 _( o // 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')
( {3 D0 a& }, u4 A9 b$ @0 p 6. console.table() * M6 ^$ Q) `( T3 |, t G
这个方法允许我们在控制台中生成表格。输入数据必须是数组或显示为表格的对象。/ L5 `: K0 H( K0 E5 |. b/ w# Z( ^
// console.table() method
console.table({a:1, b:2, c:3, d:4, e:5})
; c3 {1 J! P, s$ b; i
7. console.count() 7 u: e. R6 X/ a+ v% V
这个方法在调用时会将数字(调用次数)写入到控制台。6 d) [" @, b9 J9 b
// console.count() method
console.log('This is a sample count')
for(let i=0; i<10; i++){
console.count('This is iteration number', i)
}
% ~: ~: y0 m; y- m, G0 g7 L
8. console.group()和console.groupEnd() . Y) J( H% W) V/ i. s6 N- c1 }# ^
控制台对象的group()和groupEnd()方法允许我们将内容分组到单独的代码块中,并且这些代码块将缩进。和time()和timeEnd()一样,它们也接受值相同的标签。
1 y7 D6 i/ W2 q. o // 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')
% c+ T0 p; `6 Z