推荐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 相关文章推荐
点击页面其它地方隐藏该div的两种思路
Nov 18 Javascript
JS的get和set使用示例
Feb 20 Javascript
javascript实现tab切换的四种方法
Nov 05 Javascript
Bootstrap对话框使用实例讲解
Sep 24 Javascript
使用bootstraptable插件实现表格记录的查询、分页、排序操作
Aug 06 Javascript
基于Vue2x实现响应式自适应轮播组件插件VueSliderShow功能
May 16 Javascript
如何从头实现一个node.js的koa框架
Jun 17 Javascript
Javascript原生ajax请求代码实例
Feb 20 Javascript
js实现数据导出为EXCEL(支持大量数据导出)
Mar 31 Javascript
Quasar Input:type="number" 去掉上下小箭头 实现加减按钮样式功能
Apr 09 Javascript
vue实现移动端项目多行文本溢出省略
Jul 29 Javascript
浅谈克隆 JavaScript
Nov 02 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 date函数参数详解
2006/11/27 PHP
理解php Hash函数,增强密码安全
2011/02/25 PHP
浅谈PHP强制类型转换,慎用!
2013/06/06 PHP
php实现遍历目录并删除指定文件中指定内容
2015/01/21 PHP
PHP代码实现爬虫记录――超管用
2015/07/31 PHP
Mac下php 5升级到php 7的步骤详解
2017/04/26 PHP
jquery JSON的解析方式
2009/07/25 Javascript
再谈javascript图片预加载技术(详细演示)
2011/03/12 Javascript
非常棒的10款jQuery 幻灯片插件
2011/06/14 Javascript
js获取URL的参数的方法(getQueryString)示例
2013/09/29 Javascript
JQuery EasyUI 数字格式化处理示例
2014/05/05 Javascript
JS中解决谷歌浏览器记住密码输入框颜色改变功能
2017/02/13 Javascript
BootStrap 导航条实例代码
2017/05/18 Javascript
JS实现微信里判断页面是否被分享成功的方法
2017/06/06 Javascript
详解基于Node.js的HTTP/2 Server实践
2018/05/31 Javascript
Javascript实现时间倒计时功能
2018/11/17 Javascript
js编写简易的计算器
2020/07/29 Javascript
Vue实现导航栏菜单
2020/08/19 Javascript
深入理解python中的atexit模块
2017/03/07 Python
Python实现一个转存纯真IP数据库的脚本分享
2017/05/21 Python
python paramiko模块学习分享
2017/08/23 Python
浅谈Pandas中map, applymap and apply的区别
2018/04/10 Python
Python3+Appium实现多台移动设备操作的方法
2019/07/05 Python
openCV提取图像中的矩形区域
2020/07/21 Python
python Zmail模块简介与使用示例
2020/12/19 Python
CSS3实现曲线阴影和翘边阴影
2016/05/03 HTML / CSS
基于Modernizr 让网站进行优雅降级的分析
2013/04/21 HTML / CSS
什么是"引用"?申明和使用"引用"要注意哪些问题?
2016/03/03 面试题
Discard Protocol抛弃协议的作用是什么
2015/10/10 面试题
护理专业自荐信
2013/12/03 职场文书
关于元旦的广播稿
2014/02/16 职场文书
夜不归宿检讨书
2014/02/25 职场文书
争先创优活动总结
2014/08/27 职场文书
党员群众路线教育实践活动学习笔记
2014/11/05 职场文书
煤矿隐患排查制度
2015/08/05 职场文书
2019年暑期安全广播稿!
2019/07/03 职场文书