1. 使用alert()调试

2.  console

基本输出

  console.log("打印字符串");
console.error("我是个错误");
console.info("我是是信息");
console.warn("我是是警告");
console.debug("我是是调试");

控制台显示结果:

  console.clear(); //清空控制台

格式化输出

console.log("%s年",) //%s表示字符串
console.log("%d年%d月",,) //%d表示整数
console.log("%f",3.124443333) //%f表示小数
console.log("%o",console) //%o表示对象
console.log("%c自定义样式","font-size:30px;color:red;")
console.log("%c我是%c自定义样式","font-size:20px;color:green;","font-size:30px;color:red;")

控制台显示结果:

DOM输出

var ul=document.getElementsByTagName("ul");
//树形输出table节点,即<table>和它的innerHTML
console.dirxml(ul)

控制台显示结果:

对象输出:

var obj={
name:'song',
age:
}
console.dir(obj);

控制台显示结果:

多个对象的集合:使用console.table()输出

  var obj = [
{name: 'Sunny', age: },
{name: 'Bob', age: },
{name: 'Lucy', age: },
]
console.log(obj);
console.table(obj)

控制台显示结果:

成组输出:

   console.group("start");
console.log("sub1");
console.log("sub2");
console.log("sub3");
console.groupEnd("end");

控制台显示结果:

函数计数和跟踪:

//输出前n个斐波那契数列
function fib(n) {
if (n == ) return;
//放在函数里,每当这句代码运行,就会输出所在函数执行的次数
console.count("调用次数");
//显示函数调用轨迹(访问调用栈)
console.trace();
var a = arguments[] || ;
var b = arguments[] || ;
console.log("fib=" + a);
[a, b] = [b, a + b];
fib(--n, a, b);
}
fib();

控制台显示输出:

计时:

 console.time();
fib(); //调用上面的斐波那契数列函数
console.timeEnd()

控制台输出结果:显示执行函数所使用的时间

性能分析:

  console.profile()
fib(); //调用上面的斐波那契数列函数
console.profileEnd()

注:Chrome开发工具的Audits标签页也可以实现性能分析

debugger:断点调试

Pause/Resume script execution:暂停/恢复脚本执行(程序执行到下一断点停止)

Step over next function call:执行到下一步的函数调用(跳到下一行)

Step into next function call:进入当前函数

Step out of current function:跳出当前执行的函数

Deactive/Active all breakpoints 关闭/开启所有断点(不会取消断点)

Pause on exceptions:异常情况自动设置断点

Watch:Watch表达式

Call Stack:栈中变量的调用

Scope:当前作用域变量观察

Breakpoints:当前断点变量观察

XHR BreakPoints:面向ajax,专为异步而生的断点调试功能

DOM BreakPoints:主要包括下列DOM断点

  当节点被移除时断点(Break on node removal)

  当节点属性发生变化时断点(Break on attributes modifications)

  当节点节点内部子节点变化时断点(Break on subtree modifications)

Global Listenters:全局事件监听

Event Lintener BreakPoints:事件监听器断点,列出了所有页面及脚本事件,包括鼠标、键盘、动画、定时器、XHR等

Chrome调试技巧总结

1. DOM元素的控制台标签

  Chrome开发者工具和Firebug都提供了书签功能,用于显示你在元素标签页(Chrome)或HTML标签页(Firebug)中最后点击的DOM元素。

  如果你依次选择了A元素、B元素、C元素,那么\$0表示C元素,\$1表示B元素,\$2表示A元素

2. 调试函数f,可以使用debug(f)语句

3. Source标签页左侧面板上有一个代码片段(Snippet)的子标签页,用于保存代码片段,帮你调试代码

4. 可以使用Chrome开发者工具中的Source标签页中的格式化按钮(Pretty Print Button)格式化压缩后的代码

5. 在Network面板,选择一个资源文件,右键Copy Response可以快速复制响应的内容

6. 利用媒体查询,这个主要在Device Mode调节不同的分辨率显示

7. 选择Elements,按Esc>Emulation>Sensors进行传感器模拟

8. 点击渐入效果样式图标(紫色图标),可以预览动画效果,并可对相应的贝塞曲线(cubic-bezier)进行调试动画效果

9. 在Source中按住Alt键并拖动鼠标进行多列内容选择

10. Elements面板右键执行DOM元素节点,选择Force Element State 或点击右侧Toggle Element State 图标可以触发伪类

11. Network面板中选择一张图片,在右侧图片上鼠标右键选择copy it as a Data URI,就可以获取图片的Data URL (base64编码)

12. 通过按住Ctrl键可以添加多个编辑光标,同时对多处进行编辑。按下Ctrl + U可以撤销编辑。

13. Elements面板右侧的Style编辑器中,点击颜色十六进制编码前的小色块,会弹出一个调色板。

14. 按下Alt键并且鼠标双击选择DOM元素前面的箭头,就会展开该DOM元素下的所有字节点元素.

15. 快捷键

快速定位到行:快捷键 Ctrl+O(Mac: CMD+O),输入:行号:列号 来进行定位
        元素搜索:快捷键 Ctrl+F(Mac: CMD+F),试试在搜索栏输入ID选择符或者类选择符就可以定位到元素啦

Chrome调式技巧的更多相关文章

  1. chrome使用技巧

    chrome使用技巧 chrome对于开发人员来说,绝对是一个神器.下面,介绍关于它的一些小技巧: 1.利用chrome快速定位source中的资源. 我之前一般如果查找每个文件,都是打开控制台,在s ...

  2. 转15个必须知道的chrome开发者技巧GIF

    在Web开发者中,Google Chrome是使用最广泛的浏览器.六周一次的发布周期和一套强大的不断扩大开发功能,使其成为了web开发者必备的工具.你可能已经熟悉了它的部分功能,如使用console和 ...

  3. 15个必须知道的chrome开发者技巧(转)

    15个必须知道的chrome开发者技巧 在Web开发者中,Google Chrome是使用最广泛的浏览器.六周一次的发布周期和一套强大的不断扩大开发功能,使其成为了web开发者必备的工具.你可能已经熟 ...

  4. Chrome 调试技巧

    Chrome 调试技巧 1.alert 这个不用多说了,不言自明. 可参考:https://www.cnblogs.com/Michelle20180227/p/9110028.html 2.cons ...

  5. 前端开发神一样的工具chrome调试技巧

    前端开发神一样的工具chrome调试技巧 文章来自  Colin-UED // 与您分享前端开发知识 主页 Javascript HTML CSS NodeJs User Experience FE ...

  6. chrome使用技巧(看了定不让你失望)

    写在前面 之前有看过刘哇勇写的Chrome 控制台不完全指南,让我觉得瞬间对chrome的了解实在太浅了.对此特意了解了一番(也就是在他的博文上进行了一些总结和了解一些其它chrome使用方面的诀窍) ...

  7. Chrome 使用技巧

    阅读目录 写在前面 快速切换文件 在源代码中搜索 在源代码中快速跳转到指定的行 使用多个插入符进行选择 设备模式 设备传感仿真 格式化凌乱的js源码 颜色选择器 改变颜色格式 强制改变元素状态(方便查 ...

  8. 15个必须知道的chrome开发者技巧

    在Web开发者中,Google Chrome是使用最广泛的浏览器.六周一次的发布周期和一套强大的不断扩大开发功能,使其成为了web开发者必备的工具.你可能已经熟悉了它的部分功能,如使用console和 ...

  9. chrome使用技巧(转)good

    阅读目录 写在前面 快速切换文件 在源代码中搜索 在源代码中快速跳转到指定的行 使用多个插入符进行选择 设备模式 设备传感仿真 格式化凌乱的js源码 颜色选择器 改变颜色格式 强制改变元素状态(方便查 ...

随机推荐

  1. UIColor

    UIColor.CIColor 和 CGColor 出现在不同的类库里面,其实就是颜色存储方式不同而已,比如 999 可以用 10 进制.2 进制.16 进制等存储.三者之间都是能够方便转换的,特别是 ...

  2. fseek函数

    函数名:fseek函数 头文件:#include<stdio.h> 功能:把与fp有关的文件位置指针放到一个指定位置. 格式:  int fseek(FILE *stream, long ...

  3. Jmeter-无法启动,'findstr'不是内部或外部命令,也不是可运行的程序

    今天有一个同事的jmeter无法安装,于是帮他看了看,报以下错误: JAVA的环境变量没有配置好,于是重新配置了下环境变量后,再启动,发现还是不好,于是网上查了下, 发现要在电脑的环境变量中增加 pa ...

  4. 「产品经理全连接系列1」Epic/Feature/Story/Task/Bug到底是什么

    大家好,我是华为云的产品经理 恒少: 作为布道师和产品经理,出差各地接触客户是常态,经常和华为云的客户交流.布道.技术沙龙,但是线下交流,覆盖的用户总还是少数. 我希望可以借线上的平台,和用户持续交流 ...

  5. ubuntu开机自启动服务管理

    安装sysv-rc-conf sudo apt-get install sysv-rc-conf 执行下面,查看服务情况 sudo sysv-rc-conf 启动服务有以下两种方式 update-rc ...

  6. 使用Mybatis-plus发生org.apache.ibatis.binding.BindingException: Invalid bound statement (not found):

    容我慢慢说来,之前是使用springboot+mybatis.我一直采用xml配置文件写sql. 后来采用了mybatis-plus之后,在本地上面测试没有一点问题.一放到服务器就发生这种情况 在本地 ...

  7. 老男孩python作业3-购物车程序优化

    购物车优化要求:用户入口: 1.商品信息存在文件里 2.已购商品,余额记录.第一次启动程序时需要记录工资,第二次启动程序时谈出上次余额 3.允许用户根据商品编号购买商品 4.用户选择商品后,检测是否够 ...

  8. freemarker 遍历树形菜单

    <ul class="nav sidebar-menu"> <!--Dashboard--> <!-- 定义遍历方法 --> <#macr ...

  9. C语言中的常用函数_持续更新

    isspace函数: 背景:之前遇到scanf()输入时会把换行符留在输入队列的情况,如果下次要用到getchar(),但是会导致其先返回这个我们不需要的换行符:从而导致不希望出现的行为: 说明:检查 ...

  10. Go语言基础之11--Goroutine

    一.创建goroutine 1)在go语言中,每一个并发的执行单元叫做一个goroutine: 2)当一个程序启动时,其主函数即在一个单独的goroutine中运行,一般这个goroutine是主go ...