JavaScript控制台的更多功能


Posted in Javascript onApril 28, 2021

概述

你可能在JavaScript项目中都用了console.log。这是一种查看变量的值或程序运行中发生的事情的便捷方法。但是JavaScriptconsole 对象还有许多其他的功能,可以在处理项目时提供帮助。本文将会介绍一些我的最爱,希望你在工作时记得使用它们!

请注意,此处的例子适用于在浏览器中运行的 JavaScript。这与在 Node.js中运行的 JavaScript 相似,但是在 Node.js中的行为可能略有不同。

console.log

在进入其他选项之前,让我们先回顾一下 console.log 的功能。console.log将消息输出到控制台。你可以输入一个对象、一个数组、一个对象数组、一个字符串、一个布尔值,基本上你想要打印到控制台的任何内容都可以。这是使用console.log及其输出的例子:

console.log({ restaurantName: 'Pizza Planet' }); // { restaurantName: 'Pizza Planet' };

这是 JavaScript 中最常用的调试方法,也是最常用的控制台方法。现在让我们来谈谈其他的一些选择!

console.info

console.info与console.log几乎相同。它将信息性消息打印到控制台。据我所知,log和info之间并没有真正的区别,只是取决于你怎样对消息进行分类。但是如果你选择从浏览器控制台中隐藏 “info” 级别的消息,则 “log” 和 “info” 消息都会被隐藏。要使用console.info可以这样做:

console.log({ restaurantName: 'Pizza Planet' }); // { restaurantName: 'Pizza Planet' };

同样,输出几乎完全相同。

console.warn

console.warn将警告消息打印到控制台。从本质上讲,它与前面的功能相同,但是该消息在控制台中带有黄色背景,并带有警告图标(至少在 Chrome Dev Tools 中是这样)。当执行某些操作可能会导致你程序中的错误,但目前不会引起任何问题时,请使用console.warn。它使你和你的用户或其他开发人员知道那里有可能会发生问题。

console.warn({ restaurantName: 'Pizza Planet' }); //  { restaurantName: 'Pizza Planet' };

像前面一样,可以通过传递相同的值来把警告打印到控制台。

console.error

console.error将错误信息输出到控制台。本质上,它与前面的功能相同,但是该消息在控制台中具有红色背景,并带有带有白色 “x” 错误图标的红色圆圈(至少在 Chrome Dev Tools 中)。当你的程序出现问题时,请使用console.error。它为其他开发人员提供了一种简便的方法来找出问题的原因并加以解决。它将能够为你提供错误的堆栈跟踪信息,以便你也可以查找错误。

console.error({ restaurantName: 'Pizza Planet' }); //  { restaurantName: 'Pizza Planet' };

像前面一样,可以通过传递相同的值来把错误打印到控制台。

console.table

这是我最喜欢的控制台选项之一,尽管我经常忘记它。console.table接受一些能够以表格形式展示的数据并输出。让我们看几个例子。我们首先从对象上的console.table开始:

console.table({ restaurantName: 'Pizza Planet', streetAddress: '123 Maple' });

在dev tools中的输出看起来类似于此:

(index) Value
restaurantName Pizza Planet
streetAddress 123 Maple

它获取对象的每个属性名称,并将其放在index列中,并将属性的值放入Value列中。这发生在数组中的每个属性上。那么,如果我们输出对象数组会怎样?结果将如下所示:

(index) restaurantName streetAddress
0 Pizza Planet 123 Maple
1 Pizza Palace 123 Elm

我发现自己通常会使用console.log,因为我已经习惯了,但是我认为很多时候console.table会更好地工作,并以一种美观、干净、易读的方式为我输出对象。

console.assert

console.assert是一种将未满足你确定条件的消息打印到控制台的方法。该函数有两个参数:要求值的表达式和应显示的错误消息。这是一个例子:

const obj = { restaurantName: 'Pizza Planet' };
console.assert(obj.restaurantName === 'Pizza Palace', 'The name of the restaurant is not "Pizza Palace"');
//  Assertion Failed; 'The name of the restaurant is not "Pizza Palace"'

这可能是另一种非常好的调试程序的方法。仅当断言失败时才会显示该消息,因此如果未显示任何消息,则可以假定表达式正评估正确。

console.group 和 console.groupEnd

console.group和console.groupEnd是可以将许多 console.log 逻辑分组的方式。然后,你可以在需要时通过折叠组以将其隐藏。相当容易使用:

console.group();
console.log({ restaurantName: 'Pizza Palace' });
console.groupEnd();

该组可能会整体折叠。如果你需要在控制台上记录很多内容,这可能会很有用。

结论

在 JavaScript 中,有很多方法可以用于console对象。它们可以帮我们进行开发,以便可以根据类型过滤消息;查看表中的一项或多项;或者将它们组合在一起或折叠它们,以便在需要时将其隐藏。它将改善你的工作流程。

以上就是JavaScript控制台的更多功能的详细内容,更多关于JavaScript控制台的资料请关注三水点靠木其它相关文章!

Javascript 相关文章推荐
jquery 可排列的表实现代码
Nov 13 Javascript
jQuery库与其他JS库冲突的解决办法
Feb 07 Javascript
jQuery 1.5最新版本的改进细节分析
Jan 19 Javascript
新发现一个骗链接的方法(js读取cookies)
Jan 11 Javascript
jquery 关于event.target使用的几点说明介绍
Apr 26 Javascript
使用微信内置浏览器点击下拉框出现页面乱跳转现象(iphone),该怎么办
Jan 04 Javascript
JS获取当前脚本文件的绝对路径
Mar 02 Javascript
Vue.js使用v-show和v-if的注意事项
Dec 13 Javascript
原生JavaScript实现Tooltip浮动提示框特效
Mar 07 Javascript
详解react-router 4.0 下服务器如何配合BrowserRouter
Dec 29 Javascript
JS与CSS3实现图片响应鼠标移动放大效果示例
May 04 Javascript
JS面向对象编程实现的拖拽功能案例详解
Mar 03 Javascript
JavaScript使用canvas绘制坐标和线
JS Object构造函数之Object.freeze
Apr 28 #Javascript
关于vue中如何监听数组变化
vue实现简单数据双向绑定
Apr 28 #Vue.js
JS异步堆栈追踪之为什么await胜过Promise
Apr 28 #Javascript
vue引入Excel表格插件的方法
Apr 28 #Vue.js
react如何快速设置文件路径别名
You might like
PHP滚动日志的代码实现
2015/06/10 PHP
php使用ZipArchive函数实现文件的压缩与解压缩
2015/10/27 PHP
浅谈PHP错误类型及屏蔽方法
2017/05/27 PHP
php中curl和soap方式请求服务超时问题的解决
2018/06/11 PHP
javascript 特性检测并非浏览器检测
2010/01/15 Javascript
JS中的log对象获取以及debug的写法介绍
2014/03/03 Javascript
jquery实现更改表格行顺序示例
2014/04/30 Javascript
js 获取页面高度和宽度兼容 ie firefox chrome等
2014/05/14 Javascript
使用Chart.js图表库制作漂亮的响应式表单
2015/10/28 Javascript
JavaScript定时器实现的原理分析
2016/12/06 Javascript
JS复制对应id的内容到粘贴板(Ctrl+C效果)
2017/01/23 Javascript
AngularJS实现表格的增删改查(仅限前端)
2017/07/04 Javascript
AngularJS常见过滤器用法实例总结
2017/07/06 Javascript
JavaScript如何获取到导航条中HTTP信息
2017/10/10 Javascript
JavaScript定义及输出螺旋矩阵的方法详解
2017/12/01 Javascript
JS实现延迟隐藏功能的方法(类似QQ头像鼠标放上展示信息)
2017/12/28 Javascript
原生JS实现旋转轮播图+文字内容切换效果【附源码】
2018/09/29 Javascript
浅谈实现在线预览PDF的几种解决办法
2020/08/10 Javascript
JS highcharts动态柱状图原理及实现
2020/10/16 Javascript
python实现文本去重且不打乱原本顺序
2016/01/26 Python
python shell根据ip获取主机名代码示例
2017/11/25 Python
Django中使用第三方登录的示例代码
2018/08/20 Python
python写程序统计词频的方法
2019/07/29 Python
python实现高斯判别分析算法的例子
2019/12/09 Python
详解python tkinter 图片插入问题
2020/09/03 Python
matplotlib 三维图表绘制方法简介
2020/09/20 Python
详解通过变换矩阵实现canvas的缩放功能
2019/01/14 HTML / CSS
城市观光通行证:The Sightseeing Pass
2018/04/28 全球购物
JAVA程序设计笔试题面试题一套
2015/07/28 面试题
中学门卫岗位职责
2013/12/26 职场文书
本科生导师推荐信范文
2014/05/18 职场文书
水污染治理工程专业求职信
2014/06/14 职场文书
2014年技术部工作总结
2014/12/12 职场文书
小学生读书笔记范文
2015/06/30 职场文书
Flutter Navigator 实现路由传递参数
2022/04/22 Java/Android
单机多实例部署 MySQL8.0.20
2022/05/15 MySQL