console.time('total'); console.time('init arr'); var arr = new Array(10000); console.timeEnd('init arr'); for (var i = 0; i < arr.length; i++) { arr[i] = new Object(); } console.timeEnd('total');
result:
18、console.timeEnd([label])
定义:Stops a timer. See console.time() for examples.
译文:停止计时器。以console.time()作为一个例子。
19、console.timeStamp([label])
定义:Adds an event to the Timeline during a recording session.
译文:在一个记录会话期间,添加一个事件到时间表。
示例:
console.timeStamp('check out this custom timestamp thanks to console.timeStamp()!');
result:
20、console.trace(object)
定义:Prints a stack trace from the point where the method was called.
译文:打印一个堆栈跟踪的方法。
示例:
function add(num){ if(num>0){ //you can pass lables and objects to trace,too. console.trace('recursion is fun:',num); return num+add(num-1); }else{ return 0; } } add(3);
result:
21、console.warn(object [, object, ...])
定义: Prints a message like console.log(), but also displays a yellow warning icon next to the logged message.
译文:不仅打印像console.log()的消息,而且也显示一个紧挨着输出消息的黄色图标。
示例:
console.warn('user limit reached!');
result:
小结:
大致介绍了Chrome console内置函数,其中,console.log(),console.info(),console.error(),console.warn()需要区别一下。
三、Sources面板
概述
Sources面板通过设置断点来调试 JavaScript ,或者通过Workspaces(工作区)连接本地文件来使用开发者工具的实时编辑器。在上一篇博文本篇博客详解Google Chrome浏览器(理论篇)中概述了Sources面板的主要功能,即断点调试、调试混淆的代码和使用开发者工具工作区进行持久化保存,本篇文章将结合Sources面板的主要功能,且从Source面板三个组成部分来叙述,下图红色字体标记。
详解
第一部份:它的功能类似于Resources面板,主要用来显示网页加载脚本文件,如css,js等资源文件,但不包括cookie,img等静态资源文件。
该部分由三个Tab组成,它们都存在不同域名和环境下的js和css文件。
a、Sources:包含该项目的静态文件,如项目资源文件css和js。双击选中文件,该内容会在第二部分显示(若选择JS文件,则可以在第二部分进行断点调试)
b、Content scripts:主要是第三方插件和Chrome浏览器资源问件等
c、Snippets:js片段,允许用户自设定JS,主要用来测试JS文件、记住调试片段、单元测试、少了功能代码编写等
第二部分
这部分,主要有两个功能:查看第一部分选择的页面和js调试。主要讲解js调试。
a、设置和取消断点。选择想要设置断点的js具体行,点击行号,就设置了断点,再次点击,就取消已设置的断点。
b、快捷键:F10单步执行,但当遇到方法,不进入方法,直接方法外的下一行代码。F11单步调试,且遇方法体,需要经过。CTR+F 快速查找匹配资源。CTR+G 快速定位文件具体行。
c、第二部分底部,“{}”表示格式化代码。
d、第二部分底部,紧挨{}处右侧,表示当前光标行号和列号。
第三部分
a、顶部图标说明
b、Watch:为当前断点添加表达式。注:程序每执行一行代码,都会执行自定义添加的表达式,某些时候,会严重影响程序性能。
c、Scope监视环境变量,私有变量、公有变量、全局变量等。
总结
本想在本篇博文就将Chrome讲完的,但写到这,感觉篇幅比较长了,经过认真考虑,还是分为两篇博文来写。
本篇博文主要写了Chrome DevTool 前三面板:Elements,Console和Sources,在接下来的另一篇博文中,将接着写剩下的部分:Network,Timeline,Profiles,Application,Security,Audits面板。