console.log()是web开发人员工作中的好朋友。但是你知道控制台包含的不仅仅是console.log()吗?这篇文章要讨论的就是JavaScript中的控制台。
6 ~+ f; F7 h v" Y 简介 " x) T+ p7 O4 a3 R, B
Web控制台是一个工具,主要用于记录与网页相关的信息,例如:网络请求、JavaScript安全错误、警告、CSS等。它使我们能够通过在网页内容中执行JavaScript表达式来与网页交互。
; V3 L1 R7 s' _, W9 N" N6 F7 R 控制台的类型7 a: E+ n5 _/ j( w; g Z& k$ t
console.log() console.error() console.warn() console.clear() console.time() console.table() console.count() console.group()6 k! U7 M. I6 Q
1. console.log()
; n) Q8 n% G, s3 k& J% o) `7 P 主要用于将输出信息打印到控制台。log()中可以放入任何类型,无论是强类型、数组、对象、还是布尔值等。
0 ^: Y$ Y' _1 j# v$ \& M% U5 D4 L //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()
2 ?; p* v' E! t7 Y: h9 m4 N
2. console.error()
9 \, d; X9 d" |: q" [ 此方法用于将错误消息记录到控制台。在测试代码时很有用。默认情况下,错误消息将突出显示为红色。1 q6 T, e+ @2 r! o+ W: |
// console.error() method
console.error('This is a sample Error')
9 X8 m4 Y& o0 `" S/ q. M 3. console.warn() , r; ?& W5 n# p F( k$ o
用于将警告消息记录到控制台。默认情况下,警告消息将突出显示为黄色。
# k$ H# ^" G4 R2 n9 U // console.warn() method
console.warn('This is a sample Warning')
, u2 k- ]; t# K' ?: J 4. console.clear() % X5 ^! |2 G1 G' ^, c: T! d( ]
用于清除控制台信息。清除控制台时,如果是基于Chromium的浏览器,将打印一个简单的叠加文本,如下面的截图所示“Console was cleared”,而在Firefox中,则不会返回任何消息。
- O$ R& w( c& K+ m8 [& T0 V! D0 q7 G4 f // console.clear() method
console.clear()
2 }* N2 `( n0 N0 w 5. console.time()和console.timeEnd()
' ~: |3 E i3 q6 k e& [ 无论何时我们想知道一段代码或一个函数所需要花费的时间,都可以使用JavaScript控制台对象提供的time()和timeEnd()方法。关键是要有一个必须相同的标签,而里面的代码可以是任何东西(函数、对象、甚至直接console.log()都可以)。* @7 l* j4 }2 P7 K! f
// 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')
! I/ f! E( P9 l2 f# e
6. console.table() ; m: x$ r, b/ w% x. B4 Q
这个方法允许我们在控制台中生成表格。输入数据必须是数组或显示为表格的对象。
8 `% N+ L# g4 \ // console.table() method
console.table({a:1, b:2, c:3, d:4, e:5})
6 r. x$ _- C7 h1 ?( P) q7 }
7. console.count() z |" E g+ c( a1 M# {. C
这个方法在调用时会将数字(调用次数)写入到控制台。
' _* q" [! t% j1 Y2 }, z2 S // console.count() method
console.log('This is a sample count')
for(let i=0; i<10; i++){
console.count('This is iteration number', i)
}
8 X2 i' w( \% m+ [; m1 s 8. console.group()和console.groupEnd()
0 F8 ] S* [- d, W 控制台对象的group()和groupEnd()方法允许我们将内容分组到单独的代码块中,并且这些代码块将缩进。和time()和timeEnd()一样,它们也接受值相同的标签。
" J5 l+ w: B+ H) v @7 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')
; p5 V3 [, D, e6 ~* j8 [; h