你不知道的那些JavaScript console用法

498 阅读2分钟

JavaScript Console

console是操作浏览器控制台的对象,(比如Chrome、Firefox浏览器控制台),但console具体的使用细节可能会因浏览器而有细微差别,但大体功能相似。

很多程序员喜欢使用console.log()来调试JavaScript代码,但却不知道console还有很多其他更强大的方法,今天让我们来了解它们的存在。

  • console.log() 用于常规的信息输出
  • console.info() 用于信息输出
  • console.warn() 输出警告信息
  • console.error() 输出错误信息

除了用console.log()之外,使用其他的方法输出信息会表达更加清晰明确,更容易找到

WX20210915-195646@2x

让我们来看看console对象

WX20210915-195948@2x

可以看到console对象有很多方法,下面我挑一些常用的为大家介绍

console.clear()

console.clear()用来清除控制台的全部信息。

kapture-2021-09-15at20.02.40

console.dir()

console.dir()console.log()很像,使用console.dir()会以缩简方式打印对象,并不会展开对象,并在打印DOM元素时打印出DOM对象的属性和方法,也不支持多参数打印。

const arr = [1, 2, 3, 4, 5];
console.log(arr);
console.dir(arr);
console.log(document.head);
console.dir(document.head);

// 不支持多参数打印, 第二个参数并不会输出
console.dir('hi', { name: '傲夫靠斯' }); 

WX20210915-201911@2x

console.table()

console.table()会以漂亮的表格形式去输出对象或者数据,看起来会更加的直观。

const person = { name: '傲夫靠斯', age: 22, likes: ['打游戏', '听音乐'] }
console.table(person)

WX20210915-202504@2x

console.time(),console.timeLog()和console.timeEnd()

使用console.time()开启计时器

使用console.timeLog()来打印开启计时器到当前log的时间

使用console.timeEnd()来打印开启计时器直到结束的时间

console.time()
setTimeout(console.timeLog, 1000)
setTimeout(console.timeLog, 2000)
setTimeout(console.timeEnd, 4000)

kapture-2021-09-15at20.31.15

console.group()和console.groupEnd()

console.group用来将console信息进行分组,可以将一类的信息进行分组化,可进行无限极分组。

console.log('程序运行成功')
console.group()
console.log('进入主页')
console.log('购买商品')
console.groupEnd()
console.group()
console.log('进入主页')
console.log('浏览商品')
console.groupEnd()

image-20210915203653772

给console.log加上CSS样式

除了console.log以外,console.info、console.warn和console.error也同样支持CSS样式。这点经常被用来在控制台加一些彩蛋。

注意:在前面加上%c,否则CSS将不会生效

console.log(
        '%c我是傲夫靠斯,欢迎关注',
        'color:red;font-family:system-ui;font-size:4rem;-webkit-text-stroke: 1px black;font-weight:bold'
);

image-20210915204225562

今天就写到这,以上是我用到的,大家如果还常用到其他方法,欢迎评论区告诉我,我再补上。

唠叨

如果本文对你有用,您的点赞、评论、关注是对我最大的鼓励 O(∩_∩)O👍👍👍