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 相关文章推荐
Ext javascript建立超链接,进行事件处理的实现方法
Mar 22 Javascript
setTimeout和setInterval的区别你真的了解吗?
Mar 31 Javascript
jquery 实现滚动条下拉时无限加载的简单实例
Jun 01 Javascript
JavaScript中的this引用(推荐)
Aug 05 Javascript
使用开源工具制作网页验证码的方法
Oct 17 Javascript
Node.js中的http请求客户端示例(request client)
May 04 Javascript
使用ngrok+express解决本地环境中微信接口调试问题
Feb 26 Javascript
vue绑定事件后获取绑定事件中的this方法
Sep 15 Javascript
vue-router懒加载速度缓慢问题及解决方法
Nov 25 Javascript
JavaScript简单实现动态改变HTML内容的方法示例
Dec 25 Javascript
bootstrap-paginator服务器端分页使用方法详解
Feb 13 Javascript
小程序自动化测试的示例代码
Aug 11 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
Smarty模板学习笔记之Smarty简介
2014/05/20 PHP
Symfony2框架创建项目与模板设置实例详解
2016/03/17 PHP
ThinkPHP5.0框架使用build 自动生成模块操作示例
2019/04/11 PHP
基于jquery实现的省市区级联无ajax
2013/09/24 Javascript
jquery实现将获取的颜色值转换为十六进制形式的方法
2014/12/20 Javascript
简述jQuery ajax的执行顺序
2016/01/05 Javascript
IE8 内存泄露(内存一直增长 )的原因及解决办法
2016/04/06 Javascript
AngularJs concepts详解及示例代码
2016/09/01 Javascript
Angular中支持SCSS的方法
2017/11/18 Javascript
vue动画打包后失效问题的解决方法
2018/09/18 Javascript
AJAX在JQuery中的应用详解
2019/01/30 jQuery
JS大坑之19位数的Number型精度丢失问题详解
2019/04/22 Javascript
JavaScript快速调试的两个技巧
2020/11/04 Javascript
[01:02:20]Mineski vs TNC 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
python实现的jpg格式图片修复代码
2015/04/21 Python
举例讲解Python中的算数运算符的用法
2015/05/13 Python
Python字符串格式化
2015/06/15 Python
python导出hive数据表的schema实例代码
2018/01/22 Python
Python中property属性实例解析
2018/02/10 Python
python 遍历pd.Series的index和value
2019/11/26 Python
Python 模拟生成动态产生验证码图片的方法
2020/02/01 Python
python matplotlib实现将图例放在图外
2020/04/17 Python
python实现飞船游戏的纵向移动
2020/04/24 Python
Python 实现将numpy中的nan和inf,nan替换成对应的均值
2020/06/08 Python
python爬虫 requests-html的使用
2020/11/30 Python
python上下文管理器异常问题解决方法
2021/02/07 Python
使用 css3 transform 属性来变换背景图的方法
2019/05/07 HTML / CSS
HTML5拖拽文件上传的示例代码
2021/03/04 HTML / CSS
师范生自我鉴定范文
2013/10/05 职场文书
应届生污水处理求职信
2013/11/06 职场文书
关于孝道的演讲稿
2014/05/21 职场文书
园林技术专业求职信
2014/07/28 职场文书
保外就医申请书范文
2015/08/06 职场文书
什么是求职信?求职信应包含哪些内容?
2019/08/14 职场文书
python实现监听键盘
2021/04/26 Python
MySQL数据库完全卸载的方法
2022/03/03 MySQL