源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

Javascript调试之console对象——你不知道的一些小技巧

  • 时间:2020-04-21 18:46 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:Javascript调试之console对象——你不知道的一些小技巧
[b]前言[/b] 写过前端Javascript代码的同学肯定不会对console对象感到陌生,在调试的过程中我们经常会用console对象在控制台输出一些常量或者变量。 但是相信很多人也就只用过console.log()这一个方法,今天我们就一起来看看console对象还有哪些比较有用的方法。由于本篇文章是跟控制台有关,代码就直接在控制台展现而没有另外用新文件展示。 [img]http://files.jb51.net/file_images/article/201707/2017071011345014.jpg[/img] [b]不同级别日志[/b] 通过console对象的不同方法,可以在控制台上输出不同级别的日志信息,它们会采用不同的标志来展示,如下图所示。 [img]http://files.jb51.net/file_images/article/201707/2017071011345015.jpg[/img] 不同级别的日志 Javascript调试之console对象,它的一些小技巧你都知道吗? [b]包含占位符[/b] 在输出信息时可以通过%占位符来指定对应的值,而不用总是采用拼接字符串的方法。支持的占位符包括以下几种。 [list] [*]%s - 字符[/*] [*]%d - 整数[/*] [*]%f - 浮点数[/*] [*]%o - 对象[/*] [*][/*] [/list] 通过以下一个简单的例子可以看出其用法。 [img]http://files.jb51.net/file_images/article/201707/2017071011345016.jpg[/img] 包含占位符 Javascript调试之console对象,它的一些小技巧你都知道吗? [b]打印分组信息[/b] 通过group()方法可以以分组的形式展示出信息,类似于列表结构。 [img]http://files.jb51.net/file_images/article/201707/2017071011345017.jpg[/img] 打印分组信息 Javascript调试之console对象,它的一些小技巧你都知道吗? [b]表达式判断[/b] 在一些测试框架中,经常会用assert断言来判断一个表达式的值是否为真。同样在console对象中也有assert方法,在断言为真时并不会输出任何信息,而在断言为false时,直接抛出异常。 [img]http://files.jb51.net/file_images/article/201707/2017071011345018.jpg[/img] 表达式判断 上述代码中前两条语句判断结果都为true,所以没有输出任何信息,第三条语句判断结果为false,所以会直接抛出异常。 [b]表格打印[/b] console对象有个table方法,可以直接将对象类型的数据以表格展示。 [img]http://files.jb51.net/file_images/article/201707/2017071011345019.jpg[/img] 表格打印 [b]函数调用栈信息[/b] 通过console.trace()方法可以展示出函数调用栈的信息,来查看函数调用过程,一般会选择将这个方法放在最后执行的函数的方法体中。 [img]http://files.jb51.net/file_images/article/201707/2017071011345120.jpg[/img] 函数调用栈信息 由于栈是先进后出机制,所以先执行的方法会在后面输出,因此上述代码结果会按照sum, f2, f1的顺序输出。 [b]计时[/b] 一般统计一段代码执行耗时,方法会是通过Date对象获取毫秒数,然后将两个毫秒数进行相减。 [img]http://files.jb51.net/file_images/article/201707/2017071011345121.jpg[/img] 一般计时方法 在上述代码中通过endTime和startTime两个变量的差值来计算出中间执行代码的耗时,我们可以看出往一个数组中添加100000个字符串耗时为15毫秒。 同样可以通过console对象的time()和timeEnd()方法来统计代码段的执行耗时。time()和timeEnd()可以接收一个字符串作为标识,而且两个方法接收的字符串必须一样,如果没有传入字符串则默认为‘default'字符串。 [img]http://files.jb51.net/file_images/article/201707/2017071011345122.jpg[/img]  console对象计时方法 上述代码执行结果为16毫秒,与之前那个方法产生的结果大致一样。 [b]性能分析[/b] 通过console.profile()和console.profileEnd()方法,可以展示出代码中各个函数执行所消耗的时间,可以用来评估代码性能。 我们使用以下测试代码来进行说明。 [img]http://files.jb51.net/file_images/article/201707/2017071011345123.jpg[/img] 打开chrome浏览器的控制台会有一个Javascript Profile菜单栏,如果默认情况下没有的话,可以按照以下方法打开。 [img]http://files.jb51.net/file_images/article/201707/2017071011345124.jpg[/img]  Javascript Profile 打开这个菜单选项后,我们可以看出每个方法执行消耗的时间。 [img]http://files.jb51.net/file_images/article/201707/2017071011345125.jpg[/img] 时间消耗 以上所述是小编给大家介绍的Javascript调试之console对象——你不知道的一些小技巧,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对编程素材网网站的支持!
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部