推荐5 个常用的JavaScript调试技巧


Posted in Javascript onJanuary 08, 2015

我之前使用过用printf debugging,自此之后我用这种方法似乎总能更快地解决bug。
在某些情况下需要更好的工具,下面是其中的一些佼佼者,我敢肯定你会发现它们的有用之处:

1. debugger;

你可以使用“debugger;”语句在代码中加入强制断点。
需要断点条件吗?只需将它包装它在IF子句中:

if (somethingHappens) {

debugger;

}

只需记住在上线前移除。

2. 当节点变化时断开

有时DOM像有了自己的想法。当不可思议的变化发生时很难找到问题的根源。
Chrome开发人员工有调试这个问题的超级有用技能。这就是所谓的“Break on…”,你可以通过在元素选项卡上右键DOM节点找到它。

断点可以在节点被删除后设置,当节点的属性更改或者其子树中的节点变化时。
推荐5 个常用的JavaScript调试技巧

3. Ajax断点

XHR断点或我称作的Ajax断点,也允许当一个预期Ajax请求创建时断开。
当调试你的web应用的网络时这是个让人吃惊的工具。
推荐5 个常用的JavaScript调试技巧

4. 模拟不同的移动设备

Chrome增加了内置的移动设备模拟工具,这将简化你的日常工作。
选择任何非Console的选项卡找到它们,按键盘上的esc键并选择你想摸你的移动设备。

你当然不会得到一个真正的iPhone,但尺寸、触摸事件和agemt都会为你效仿。
推荐5 个常用的JavaScript调试技巧

5. 通过审核提升你的站点

YSlow是个伟大的工具。Chrome也在开发人员工具下包含一个称作Audits的类似工具。
使用快速审核一下你的网站,来获得有用实际的优化技巧。
推荐5 个常用的JavaScript调试技巧

还有什么呢?

没有这些工具我不能想象如何开发。当我发现新的后我会发布更多,敬请期待。

Javascript 相关文章推荐
js使浏览器窗口最大化实现代码(适用于IE)
Aug 07 Javascript
jQuery选择器全集详解
Nov 24 Javascript
jquery+php随机生成红包金额数量代码分享
Aug 27 Javascript
简单总结JavaScript中的String字符串类型
May 26 Javascript
javascript之with的使用(阿里云、淘宝使用代码分析)
Oct 11 Javascript
JS实现仿PS的调色板效果完整实例
Dec 21 Javascript
js实现上下左右弹框划出效果
Mar 08 Javascript
js实现按座位号抽奖
Apr 05 Javascript
Node.js五大应用性能技巧小结(必须收藏)
Aug 09 Javascript
Node.js readline模块与util模块的使用
Mar 01 Javascript
bootstrap中selectpicker下拉框使用方法实例
Mar 22 Javascript
Vue+webpack实现懒加载过程解析
Feb 17 Javascript
jQuery中prevUntil()方法用法实例
Jan 08 #Javascript
jQuery中prevAll()方法用法实例
Jan 08 #Javascript
jQuery中prev()方法用法实例
Jan 08 #Javascript
深入探密Javascript数组方法
Jan 08 #Javascript
用模版生成HTML的的框架jquery.tmpl使用详解
Jan 07 #Javascript
jQuery中parentsUntil()方法用法实例
Jan 07 #Javascript
jQuery中parents()方法用法实例
Jan 07 #Javascript
You might like
php 判断访客是否为搜索引擎蜘蛛的函数代码
2011/07/29 PHP
php读取富文本的时p标签会出现红线是怎么回事
2014/05/13 PHP
PHP获取中英混合字符串长度的方法
2014/06/07 PHP
PHP实现单文件、多个单文件、多文件上传函数的封装示例
2019/09/02 PHP
hover的用法及live的用法介绍(鼠标悬停效果)
2013/03/29 Javascript
jquery复选框checkbox实现删除前判断
2014/04/20 Javascript
一款基jquery超炫的动画导航菜单可响应单击事件
2014/11/02 Javascript
给before和after伪元素设置js效果的方法
2015/12/04 Javascript
JS+JSP通过img标签调用实现静态页面访问次数统计的方法
2015/12/14 Javascript
瀑布流的实现方式(原生js+jquery+css3)
2020/06/28 Javascript
JavaScript严格模式详解
2017/01/16 Javascript
nodejs 子进程正确的打开方式
2017/07/03 NodeJs
vue 双向数据绑定的实现学习之监听器的实现方法
2018/11/30 Javascript
PostgreSQL Node.js实现函数计算方法示例
2019/02/12 Javascript
js实现多张图片每隔一秒切换一张图片
2019/07/29 Javascript
layui table 多行删除(id获取)的方法
2019/09/12 Javascript
JavaScript实现滑块验证解锁
2021/01/07 Javascript
[02:09]EHOME夺得首届辉夜杯冠军—现场颁奖仪式
2015/12/28 DOTA
[05:59]带你看看DPC的台前幕后
2021/03/11 DOTA
Python中用于计算对数的log()方法
2015/05/15 Python
python学习教程之使用py2exe打包
2017/09/24 Python
基于python实现学生管理系统
2018/10/17 Python
Python中使用logging和traceback模块记录日志和跟踪异常
2019/04/09 Python
python反编译学习之字节码详解
2019/05/19 Python
解析python的局部变量和全局变量
2019/08/15 Python
Python CategoricalDtype自定义排序实现原理解析
2020/09/11 Python
CSS3中的元素过渡属性transition示例详解
2016/11/30 HTML / CSS
在线课程:Skillshare
2019/04/02 全球购物
孝老爱亲模范事迹
2014/01/24 职场文书
社区活动邀请函范文
2014/01/29 职场文书
CAD制图人员的自荐信
2014/02/07 职场文书
小学模范班主任事迹材料
2014/05/13 职场文书
党委班子纠正“四风”问题整改措施
2014/10/28 职场文书
2015年“公民道德宣传日”活动方案
2015/05/06 职场文书
MySQL pt-slave-restart工具的使用简介
2021/04/07 MySQL
python中的None与NULL用法说明
2021/05/25 Python