console.log()是web开发人员工作中的好朋友。但是你知道控制台包含的不仅仅是console.log()吗?这篇文章要讨论的就是JavaScript中的控制台。
3 U; T: W2 Q X 简介 $ ~5 ]& B' U$ I+ u% m( ~$ n
Web控制台是一个工具,主要用于记录与网页相关的信息,例如:网络请求、JavaScript安全错误、警告、CSS等。它使我们能够通过在网页内容中执行JavaScript表达式来与网页交互。 t" r7 |. i6 L
控制台的类型
2 k- c. |4 b* T8 I3 J z console.log() console.error() console.warn() console.clear() console.time() console.table() console.count() console.group()
6 b# |4 @4 ^3 \ Q* s 1. console.log()
& B; B6 T! A4 |$ k: b2 @/ k; P' Y 主要用于将输出信息打印到控制台。log()中可以放入任何类型,无论是强类型、数组、对象、还是布尔值等。1 R5 ^2 v. u8 [
//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 q; W3 T; ?5 h4 F/ J, K. }
2. console.error() ( j( r9 [1 R, X* F
此方法用于将错误消息记录到控制台。在测试代码时很有用。默认情况下,错误消息将突出显示为红色。7 A) r5 V& x% T) C
// console.error() method
console.error('This is a sample Error')
. @6 @. {$ Q2 c* n- d 3. console.warn() . z. ^( X$ M; p
用于将警告消息记录到控制台。默认情况下,警告消息将突出显示为黄色。# l% S% F4 T6 L, Y* S9 E
// console.warn() method
console.warn('This is a sample Warning')
; D K8 O+ t# A6 D0 K; w
4. console.clear()
' B5 c+ e5 |+ h3 F1 ~+ z4 v: A$ K 用于清除控制台信息。清除控制台时,如果是基于Chromium的浏览器,将打印一个简单的叠加文本,如下面的截图所示“Console was cleared”,而在Firefox中,则不会返回任何消息。5 D* Q. |; q8 g8 n
// console.clear() method
console.clear()
& r" f/ e1 G' J r 5. console.time()和console.timeEnd()
+ l" C" D: O" y' Q# K 无论何时我们想知道一段代码或一个函数所需要花费的时间,都可以使用JavaScript控制台对象提供的time()和timeEnd()方法。关键是要有一个必须相同的标签,而里面的代码可以是任何东西(函数、对象、甚至直接console.log()都可以)。" c: j! F. z0 O/ \6 R( 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')
8 E+ n# ^) } O! v, i& P
6. console.table() 7 C4 [) `% E) `5 l+ p% x
这个方法允许我们在控制台中生成表格。输入数据必须是数组或显示为表格的对象。
# |1 {, ]4 u1 [) I1 ? // console.table() method
console.table({a:1, b:2, c:3, d:4, e:5})
# a6 Z9 E& O' e' Q+ B8 R
7. console.count()
; L) d8 p/ f- p 这个方法在调用时会将数字(调用次数)写入到控制台。
9 X2 E6 t; k. g5 g! a$ P0 s' t // console.count() method
console.log('This is a sample count')
for(let i=0; i<10; i++){
console.count('This is iteration number', i)
}
! o4 M4 ~& P, ^) x( q. N6 R 8. console.group()和console.groupEnd()
6 `( F6 c) G' s; Z# W 控制台对象的group()和groupEnd()方法允许我们将内容分组到单独的代码块中,并且这些代码块将缩进。和time()和timeEnd()一样,它们也接受值相同的标签。) q" Q% \3 Y4 G5 m3 m
// 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')
8 h/ G3 x/ P; N