console.log()是web开发人员工作中的好朋友。但是你知道控制台包含的不仅仅是console.log()吗?这篇文章要讨论的就是JavaScript中的控制台。
( z% j! [- O3 ~6 V/ @3 [. q5 l 简介
& w4 F9 P( l' K# K$ t1 b' @ Web控制台是一个工具,主要用于记录与网页相关的信息,例如:网络请求、JavaScript安全错误、警告、CSS等。它使我们能够通过在网页内容中执行JavaScript表达式来与网页交互。 u5 w" O$ S1 r+ g# _$ x$ D
控制台的类型
+ w' W% e7 n' G1 Y9 ` console.log() console.error() console.warn() console.clear() console.time() console.table() console.count() console.group()
; o' n9 @, d; l+ S 1. console.log()
: Z) o2 C R7 L) `1 k- z3 }: b X5 @ 主要用于将输出信息打印到控制台。log()中可以放入任何类型,无论是强类型、数组、对象、还是布尔值等。) A, `$ }' a; C, k. x" V, [
//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()
* P) I$ o6 i3 x6 ~; d4 s, P 2. console.error() 4 F" n5 m4 p" P
此方法用于将错误消息记录到控制台。在测试代码时很有用。默认情况下,错误消息将突出显示为红色。
z0 G+ T" x/ |$ P, N m# y- T // console.error() method
console.error('This is a sample Error')
* ^( s9 Q# u4 C* }2 P9 C- U
3. console.warn()
! w, P6 C& U: @: x5 S 用于将警告消息记录到控制台。默认情况下,警告消息将突出显示为黄色。
& Q; l5 u: N j* I/ t6 W; E7 S // console.warn() method
console.warn('This is a sample Warning')
/ z) d, D/ q! \0 L 4. console.clear()
: J; w# C' g: b2 B1 R- o 用于清除控制台信息。清除控制台时,如果是基于Chromium的浏览器,将打印一个简单的叠加文本,如下面的截图所示“Console was cleared”,而在Firefox中,则不会返回任何消息。
/ e' I4 ~6 q0 U. D* B# j // console.clear() method
console.clear()
1 c7 ?+ O/ h+ {" y 5. console.time()和console.timeEnd() - y3 D% H" ^$ E. N" e
无论何时我们想知道一段代码或一个函数所需要花费的时间,都可以使用JavaScript控制台对象提供的time()和timeEnd()方法。关键是要有一个必须相同的标签,而里面的代码可以是任何东西(函数、对象、甚至直接console.log()都可以)。; v9 d5 L. |6 }& c( r& ]1 ~8 U- w& C
// 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')
# T6 L3 }' X8 E5 z2 @ 6. console.table()
; ]! l3 B' }9 Q% c 这个方法允许我们在控制台中生成表格。输入数据必须是数组或显示为表格的对象。
; D2 s3 y/ Q1 A8 Q // console.table() method
console.table({a:1, b:2, c:3, d:4, e:5})
% t2 Q7 o" x. y/ e1 b
7. console.count()
6 X# q2 {/ g$ F 这个方法在调用时会将数字(调用次数)写入到控制台。
7 y; S5 ?4 u) s6 U0 F8 j // console.count() method
console.log('This is a sample count')
for(let i=0; i<10; i++){
console.count('This is iteration number', i)
}
: ^- E& i5 ^6 Y( w3 `: n N 8. console.group()和console.groupEnd() ( k1 W( P" K# i* i0 z; X
控制台对象的group()和groupEnd()方法允许我们将内容分组到单独的代码块中,并且这些代码块将缩进。和time()和timeEnd()一样,它们也接受值相同的标签。 O" V; M2 X# r6 I `
// 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: K2 q1 \1 o0 ]' L1 u