console.log()是web开发人员工作中的好朋友。但是你知道控制台包含的不仅仅是console.log()吗?这篇文章要讨论的就是JavaScript中的控制台。
- D* c: q& b/ i7 m! m9 A* P 简介 ! d# U. V/ l: W3 }; s
Web控制台是一个工具,主要用于记录与网页相关的信息,例如:网络请求、JavaScript安全错误、警告、CSS等。它使我们能够通过在网页内容中执行JavaScript表达式来与网页交互。7 m; P, c8 a, l" d1 h
控制台的类型
" n: h% a: ]8 P/ v3 g console.log() console.error() console.warn() console.clear() console.time() console.table() console.count() console.group()8 L' Q% H& M3 ^4 v
1. console.log() * \" L$ f8 B G4 O8 r6 r5 x
主要用于将输出信息打印到控制台。log()中可以放入任何类型,无论是强类型、数组、对象、还是布尔值等。
4 |8 q0 E) S7 a) E //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()
( _6 H4 i$ W5 w A- R( R 2. console.error()
' `3 \, j$ g6 @. `! z5 H9 g. e1 e% p 此方法用于将错误消息记录到控制台。在测试代码时很有用。默认情况下,错误消息将突出显示为红色。
* o. P6 M0 {" h& G. K6 X // console.error() method
console.error('This is a sample Error')
( c9 q8 v6 y# L) _# G# Z' R! | 3. console.warn()
3 p- X3 t. V, Z. t5 J8 w1 P' z' }0 X 用于将警告消息记录到控制台。默认情况下,警告消息将突出显示为黄色。
: j" g/ a- z( a, v% t6 z // console.warn() method
console.warn('This is a sample Warning')
) y: j$ [! ?$ a0 N D+ ]! ?8 w 4. console.clear() 1 I; _- I/ k- e, a
用于清除控制台信息。清除控制台时,如果是基于Chromium的浏览器,将打印一个简单的叠加文本,如下面的截图所示“Console was cleared”,而在Firefox中,则不会返回任何消息。
8 F% ^5 r. e8 Q // console.clear() method
console.clear()
0 G; J0 l- _. w( a1 L6 F' ?) E. a" T 5. console.time()和console.timeEnd() 7 Z6 T: Q2 a4 T! f+ e, g; y
无论何时我们想知道一段代码或一个函数所需要花费的时间,都可以使用JavaScript控制台对象提供的time()和timeEnd()方法。关键是要有一个必须相同的标签,而里面的代码可以是任何东西(函数、对象、甚至直接console.log()都可以)。
1 [7 g2 p9 i9 d // 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')
+ ^) ?& W) X# J4 r4 N
6. console.table()
' F& c% m# z* T/ H( t' @+ P" v 这个方法允许我们在控制台中生成表格。输入数据必须是数组或显示为表格的对象。
, O, ^5 x6 r3 i( }. z% [ // console.table() method
console.table({a:1, b:2, c:3, d:4, e:5})
/ E; S' B9 V3 M/ C 7. console.count()
) T* O1 p8 _' y 这个方法在调用时会将数字(调用次数)写入到控制台。- H/ @/ k6 V4 c) 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)
}
4 P1 U- v5 h5 Y4 Q5 E 8. console.group()和console.groupEnd() : c% z: ]) h, A. {9 ^
控制台对象的group()和groupEnd()方法允许我们将内容分组到单独的代码块中,并且这些代码块将缩进。和time()和timeEnd()一样,它们也接受值相同的标签。
. f) i! N; P' H // 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')
& l& U6 A' `! Q2 `5 L9 J