利用Console来Debug的10个高级技巧汇总


Posted in Javascript onMarch 26, 2018

前言

在过去的十年中,我最热衷的事情之一就是前端开发(特别是JavaScript)。作为一个“匠人”,我喜欢专研各种工具。在本文,我会为你介绍一些用老式console来debug的技巧。

是的,我们都知道下面基本的技巧:

console.log(‘Hello World!');
console.info(‘Something happened…'); 
console.warn(‘Something strange happened…'); 
console.error(‘Something horrible happened…');

从现在开始,我将教会你一些你不知道的技巧,让你成为老司机!

1. console.trace()

如果你想知道消息是哪里打印出来的,使用console.trace()来获取要打印的数据的stacktrace。

利用Console来Debug的10个高级技巧汇总

2. console.time() && console.timeEnd()

如果你想分析函数的性能,可以使用console.time()来计时,console.timeEnd()来结束计时,控制台会打印出两次之间的时间差。

利用Console来Debug的10个高级技巧汇总

3. console.memory

如果你发现性能问题很难分析,可能还要考虑是否有内存泄露,你可以使用console.memory(注意memory是console的属性,不是函数),来查看当前的堆的使用情况。

利用Console来Debug的10个高级技巧汇总

4. console.profile(‘profileName') & console.profileEnd(‘profileName')

虽然不是一个标准的做法,不过被广泛接受使用。你可以使用这两个命令来启动和停止profiling。这样有助你你在代码中做精准的profiling。而不依赖于手动的鼠标点击。你可以在浏览器控制台Javacript Profiler中找到刚刚的profile。

利用Console来Debug的10个高级技巧汇总

5. console.count(“STUFF I COUNT”)

有时候为了记录一个函数或则一段代码重复执行了多少次,可以使用console.count('?')来记录。每一次执行到该代码,就会自动加1。

利用Console来Debug的10个高级技巧汇总

6. console.assert(false, “Log me!”)

你可以使用console.assert来在某些为假的条件下输出消息,而不是用if-else。

注意:在Node.js下会报错(Assertion Error)。

利用Console来Debug的10个高级技巧汇总

7. console.group(‘group') & console.groupEnd(‘group')

如果你想对打印的log做一个格式化的整理,可以使用console.group()console.groupEnd() 。使用console.group可以将log聚合成组,并且形成嵌套的层级。

请看示例:

利用Console来Debug的10个高级技巧汇总

8. String substitutions

你可以使用console.log打印变量(%s = string, %i = integer, %o = object, %f = float)。

利用Console来Debug的10个高级技巧汇总

9. console.clear()

我们已经在控制台输出了很多记录,来使用console.clear()清空一下。

利用Console来Debug的10个高级技巧汇总

10. console.table()

最后一个压轴的!你可以使用console.table()将对象以表格的形式打印出来。

利用Console来Debug的10个高级技巧汇总

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。

Javascript 相关文章推荐
Js+Dhtml:WEB程序员简易开发工具包(预先体验版)
Nov 07 Javascript
AspNet中使用JQuery boxy插件的确认框
May 20 Javascript
理解javascript中try...catch...finally
Dec 25 Javascript
JS正则表达式比较常见用法
Jan 26 Javascript
Jquery实现$.fn.extend和$.extend函数
Apr 14 Javascript
再谈javascript常见错误及解决方法
Sep 16 Javascript
easyui datagrid 大数据加载效率慢,优化解决方法(推荐)
Nov 09 Javascript
zTree树形菜单交互选项卡效果的实现方法
Dec 25 Javascript
深入浅析Vue中的 computed 和 watch
Jun 06 Javascript
jQuery实现表格的增、删、改操作示例
Jan 27 jQuery
公众号SVG动画交互实战代码
May 31 Javascript
Vue如何将页面导出成PDF文件
Aug 17 Javascript
关于vuejs中v-if和v-show的区别及v-show不起作用问题
Mar 26 #Javascript
vue中使用iview自定义验证关键词输入框问题及解决方法
Mar 26 #Javascript
Vue中v-show添加表达式的问题(判断是否显示)
Mar 26 #Javascript
使用Vue构建可重用的分页组件
Mar 26 #Javascript
基于jQuery实现Ajax验证用户名是否可用实例
Mar 25 #jQuery
jQuery实现的回车触发按钮事件功能示例
Mar 25 #jQuery
jQuery+Cookie实现切换皮肤功能【附源码下载】
Mar 25 #jQuery
You might like
DC《神奇女侠2》因疫情推迟上映 温子仁新恐怖片《恶性》撤档
2020/04/09 欧美动漫
生成缩略图
2006/10/09 PHP
php 缓存函数代码
2008/08/27 PHP
解析thinkphp的左右值无限分类
2013/06/20 PHP
从wamp到xampp的升级之路
2015/04/08 PHP
thinkphp框架无限级栏目的排序功能实现方法示例
2020/03/29 PHP
仅用[]()+!等符号就足以实现几乎任意Javascript代码
2010/03/01 Javascript
判断用户是否在线的代码
2011/03/05 Javascript
javascript从右边截取指定字符串的三种实现方法
2013/11/29 Javascript
Google Maps API地图应用示例分享
2014/10/23 Javascript
javascript的日期对象、数组对象、二维数组使用说明
2014/12/22 Javascript
JS 对象属性相关(检查属性、枚举属性等)
2015/04/05 Javascript
javascript背景时钟实现方法
2015/06/18 Javascript
JavaScript实现打字效果的方法
2015/07/10 Javascript
基于javascript实现彩票随机数生成(升级版)
2020/04/17 Javascript
Js调用Java方法并互相传参的简单实例
2016/08/11 Javascript
vue2项目使用sass的示例代码
2017/06/28 Javascript
express+vue+mongodb+session 实现注册登录功能
2018/12/06 Javascript
JS判断数组四种实现方法详解
2020/06/29 Javascript
ant design vue嵌套表格及表格内部编辑的用法说明
2020/10/28 Javascript
python socket 超时设置 errno 10054
2014/07/01 Python
python用模块zlib压缩与解压字符串和文件的方法
2016/12/16 Python
两个元祖T1=('a', 'b'),T2=('c', 'd')使用匿名函数将其转变成[{'a': 'c'},{'b': 'd'}]的几种方法
2019/03/05 Python
详解Python的循环结构知识点
2019/05/20 Python
Python程序打包工具py2exe和PyInstaller详解
2019/06/28 Python
python rsa实现数据加密和解密、签名加密和验签功能
2019/09/18 Python
python数据预处理方式 :数据降维
2020/02/24 Python
基于Django OneToOneField和ForeignKey的区别详解
2020/03/30 Python
中外合拍动画首获奥斯卡提名,“上海出品”《飞奔去月球》能否拿下最终大奖?
2021/03/16 国漫
CSS3制作文字半透明倒影效果的两种实现方式
2014/08/08 HTML / CSS
会计学财务管理专业个人的自我评价
2013/10/19 职场文书
优秀教师主要事迹
2014/02/01 职场文书
2014年党风建设工作总结
2014/11/19 职场文书
故意杀人罪辩护词
2015/05/21 职场文书
宿舍卫生管理制度
2015/08/05 职场文书
使用CSS定位HTML元素的实现方法
2022/07/07 HTML / CSS