console.log()是web开发人员工作中的好朋友。但是你知道控制台包含的不仅仅是console.log()吗?这篇文章要讨论的就是JavaScript中的控制台。& J7 ~9 D1 `2 ]0 K" q
简介 ) V+ f& K* K0 R6 [4 z7 L0 ?
Web控制台是一个工具,主要用于记录与网页相关的信息,例如:网络请求、JavaScript安全错误、警告、CSS等。它使我们能够通过在网页内容中执行JavaScript表达式来与网页交互。- o a: }: ]/ P# k$ I
控制台的类型
0 c; ]5 ?- ^0 x2 i4 V console.log() console.error() console.warn() console.clear() console.time() console.table() console.count() console.group()3 X$ e% { v- r1 o# H
1. console.log() % w* G8 H9 m) N2 M. B6 q) `, {( A
主要用于将输出信息打印到控制台。log()中可以放入任何类型,无论是强类型、数组、对象、还是布尔值等。; M) [# r! Z" f, |7 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()
* X! f9 ?- j' z! u& m2 a0 I# j. K
2. console.error()
" Z3 G ]2 J; } M4 R6 M 此方法用于将错误消息记录到控制台。在测试代码时很有用。默认情况下,错误消息将突出显示为红色。
) r" k5 _# s. X) ~9 i# E- ^! q // console.error() method
console.error('This is a sample Error')
! d- H8 N6 k% s' A% x* l
3. console.warn()
* K9 H6 L! ? i2 a: C 用于将警告消息记录到控制台。默认情况下,警告消息将突出显示为黄色。
9 `$ h# X8 c8 C6 j! W' U // console.warn() method
console.warn('This is a sample Warning')
. E6 e4 }5 L- M9 U, Z5 g, m* t
4. console.clear()
) Q. j4 f# f- L6 Q2 | w( {! ? 用于清除控制台信息。清除控制台时,如果是基于Chromium的浏览器,将打印一个简单的叠加文本,如下面的截图所示“Console was cleared”,而在Firefox中,则不会返回任何消息。+ P6 L- Z+ ?8 X# A/ \
// console.clear() method
console.clear()
8 r) S! V! N0 O, p3 g% l! p+ X
5. console.time()和console.timeEnd() 0 H ^) U3 W0 f0 j! A1 J
无论何时我们想知道一段代码或一个函数所需要花费的时间,都可以使用JavaScript控制台对象提供的time()和timeEnd()方法。关键是要有一个必须相同的标签,而里面的代码可以是任何东西(函数、对象、甚至直接console.log()都可以)。
[6 m( C) [" a/ ?2 r // 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')
: e7 F( a1 b" f) r+ W
6. console.table() + L# F$ X7 K% {+ [: l" e4 r [
这个方法允许我们在控制台中生成表格。输入数据必须是数组或显示为表格的对象。
7 u7 Y) {$ x; ? // console.table() method
console.table({a:1, b:2, c:3, d:4, e:5})
7 x% \3 r3 I S! L5 l$ j 7. console.count() 8 N2 I/ S! P5 f2 K7 \
这个方法在调用时会将数字(调用次数)写入到控制台。
2 d- d! Z. ^+ Z$ ]0 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)
}
' |7 n% A8 Q8 n" W. | 8. console.group()和console.groupEnd()
' h1 K; r; V# J& l! D 控制台对象的group()和groupEnd()方法允许我们将内容分组到单独的代码块中,并且这些代码块将缩进。和time()和timeEnd()一样,它们也接受值相同的标签。
$ x! }7 U+ q+ m# M2 k' d9 V // 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')
. Z2 p; @6 m1 M