console.log()是web开发人员工作中的好朋友。但是你知道控制台包含的不仅仅是console.log()吗?这篇文章要讨论的就是JavaScript中的控制台。
% T. E* d6 V$ k( N7 R$ j, { 简介 $ E0 ~3 C" b! B7 Y- d# q) U
Web控制台是一个工具,主要用于记录与网页相关的信息,例如:网络请求、JavaScript安全错误、警告、CSS等。它使我们能够通过在网页内容中执行JavaScript表达式来与网页交互。
+ e) [$ W8 h5 ~- k1 T- w' B 控制台的类型" t1 Z% `/ x0 N" W5 a
console.log() console.error() console.warn() console.clear() console.time() console.table() console.count() console.group()7 ~2 f( V- P8 ?( F, M' U
1. console.log() 9 a/ z5 V" b0 T2 H' S% \5 F# Z
主要用于将输出信息打印到控制台。log()中可以放入任何类型,无论是强类型、数组、对象、还是布尔值等。
& D/ d2 j4 }1 w) N //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()
" [# ~( D4 j( P! t# O" _
2. console.error() 6 q$ I9 g0 G1 o4 `0 R( v0 M
此方法用于将错误消息记录到控制台。在测试代码时很有用。默认情况下,错误消息将突出显示为红色。
$ I" B. ~' q9 o3 |' @: E# \ // console.error() method
console.error('This is a sample Error')
% ~6 a2 i0 [# z! K: `
3. console.warn()
" D5 Y9 {6 \4 ~5 z$ z 用于将警告消息记录到控制台。默认情况下,警告消息将突出显示为黄色。' Q$ {! w! ~" ?' x9 M1 Q8 J8 Y% g
// console.warn() method
console.warn('This is a sample Warning')
2 ?! N }, X$ Y) e) n 4. console.clear() 2 a, e9 G9 W6 A3 O
用于清除控制台信息。清除控制台时,如果是基于Chromium的浏览器,将打印一个简单的叠加文本,如下面的截图所示“Console was cleared”,而在Firefox中,则不会返回任何消息。 v! E' h' T- y7 [4 x% \
// console.clear() method
console.clear()
1 X, P ^, D0 [0 \& L
5. console.time()和console.timeEnd() / q6 k: l; ]* ~4 X7 w! f$ T
无论何时我们想知道一段代码或一个函数所需要花费的时间,都可以使用JavaScript控制台对象提供的time()和timeEnd()方法。关键是要有一个必须相同的标签,而里面的代码可以是任何东西(函数、对象、甚至直接console.log()都可以)。( X/ [: _2 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')
1 ~$ Y) `3 `+ ?! N( c% a) n1 ^, } N: i
6. console.table()
4 R% W3 x+ f* x* i" g 这个方法允许我们在控制台中生成表格。输入数据必须是数组或显示为表格的对象。7 l2 Z" Z2 f& [! L$ h
// console.table() method
console.table({a:1, b:2, c:3, d:4, e:5})
+ Q, a3 n$ I6 L9 _( I, @ 7. console.count() ; _0 q* P, W J: l9 W8 f
这个方法在调用时会将数字(调用次数)写入到控制台。" ]. R" q$ U: ]* q
// console.count() method
console.log('This is a sample count')
for(let i=0; i<10; i++){
console.count('This is iteration number', i)
}
: L3 F& O3 S& d9 `
8. console.group()和console.groupEnd() ( T; e1 K& E9 _5 N C2 N1 r+ U+ Q
控制台对象的group()和groupEnd()方法允许我们将内容分组到单独的代码块中,并且这些代码块将缩进。和time()和timeEnd()一样,它们也接受值相同的标签。# k0 \* A [# k t6 l7 l
// 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')
% s( u9 S4 q) w- V- { t$ Q