推荐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 加载并解析XML字符串的代码
Dec 13 Javascript
JavaScript 构造函数 面相对象学习必备知识
Jun 09 Javascript
JQuery从头学起第二讲
Jul 04 Javascript
html+css+js实现xp window界面及有关功能
Mar 26 Javascript
JS教程:window.location使用方法的区别介绍
Oct 04 Javascript
简单实用的全选反选按钮例子
Oct 18 Javascript
jquery+php实现搜索框自动提示
Nov 28 Javascript
form表单转Json提交的方法(推荐)
Sep 23 Javascript
JavaScript之filter_动力节点Java学院整理
Jun 28 Javascript
深入掌握 react的 setState的工作机制
Sep 27 Javascript
vue2中引用及使用 better-scroll的方法详解
Nov 15 Javascript
vue 实现v-for循环回来的数据动态绑定id
Nov 07 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获取文件大小的方法
2014/02/26 PHP
PHP基于php_imagick_st-Q8.dll实现JPG合成GIF图片的方法
2014/07/11 PHP
PHPCrawl爬虫库实现抓取酷狗歌单的方法示例
2017/12/21 PHP
PHP获取当前系统时间的方法小结
2018/10/03 PHP
javascript中用星号表示预录入内容的实现代码
2011/01/08 Javascript
jQuery页面加载初始化常用的三种方法
2014/06/04 Javascript
JavaScript动态改变div属性的实现方法
2015/07/22 Javascript
获取IE浏览器Cookie信息的方法
2017/01/23 Javascript
es7学习教程之fetch解决异步嵌套问题的方法示例
2017/07/21 Javascript
Vue单页式应用(Hash模式下)实现微信分享的实例
2017/07/21 Javascript
vuejs使用FormData实现ajax上传图片文件
2017/08/08 Javascript
centos 上快速搭建ghost博客方法分享
2018/05/23 Javascript
小程序登录之支付宝授权的实现示例
2019/12/13 Javascript
Vue CLI4 Vue.config.js标准配置(最全注释)
2020/06/05 Javascript
Vuex实现购物车小功能
2020/08/17 Javascript
vue浏览器返回监听的具体步骤
2021/02/03 Vue.js
[01:28:31]《加油DOTA》真人秀 第五期
2014/09/01 DOTA
[43:03]完美世界DOTA2联赛PWL S2 PXG vs Magma 第二场 11.21
2020/11/24 DOTA
python批量修改文件编码格式的方法
2018/05/31 Python
python opencv实现切变换 不裁减图片
2018/07/26 Python
python反转列表的三种方式解析
2019/11/08 Python
Python3标准库之dbm UNIX键-值数据库问题
2020/03/24 Python
win7上tensorflow2.2.0安装成功 引用DLL load failed时找不到指定模块 tensorflow has no attribute xxx 解决方法
2020/05/20 Python
关于PyCharm安装后修改路径名称使其可重新打开的问题
2020/10/20 Python
Python 调用 ES、Solr、Phoenix的示例代码
2020/11/23 Python
C#基础面试题
2016/10/17 面试题
办公室主任先进事迹
2014/01/18 职场文书
违反课堂纪律检讨书
2014/01/19 职场文书
《青海高原一株柳》教学反思
2014/04/25 职场文书
全国税务系统先进集体事迹材料
2014/05/19 职场文书
2014年采购工作总结
2014/11/20 职场文书
2015年勤工助学工作总结
2015/04/29 职场文书
2015年小学教导处工作总结
2015/05/26 职场文书
JavaScript实现显示和隐藏图片
2021/04/29 Javascript
Nginx防盗链与服务优化配置的全过程
2022/01/18 Servers
Python 一键获取电脑浏览器的账号密码
2022/05/11 Python