js调试系列 初识控制台


Posted in Javascript onJune 18, 2014

写在最开头:其实我以前就在考虑要不要写这个东西,因为这个东西确实不难,但是为什么会有这么多人问,他们问的不是怎么用控制台,而是不知道控制台能干嘛,他们也知道有 console.log 之类的东西,但他们不知道为什么要用这么长的字符串代替 alert 输出信息。在他们眼里 alert 足以。好吧,我承认小小的吐槽了下,不过这个系列我只打算介绍下调试的基本知识,不会涉及太深,因为深入的东西结合js知识,如果你js没到一个境界,我就算教你调试bug,破解一些插件之类的,你也根本不知道我在做什么。我的目的只是让你认识控制台,让你入门调试,之后的路还得靠你们自己走。

当然大侠请飘过,或者吐槽一下也行。。

js调试系列目录:

其实做web开发的都知道这东西,不论是前端还是后台,但是很多人只停留在html查看和css修改上,完全没有把控制台利用起来。
说不定有些刚入门的还不知道有这东西呢。。
这东西的资料网上一抓一大把,但是都没有讲调试方面的,只是介绍基本的怎么用而已。。

不论是 chrome firefox ie(8以上版本) 还是 360急速浏览器 搜狗浏览器 等等,只要按 F12 就能打开控制台。
我们的文章以 chrome 为例讲解,不为什么,因为我喜欢 chrome 而已。。萝卜白菜各有所爱。。
ps: ff 以前都是firebug的天下,现在原生的也非常不错了。

现在我们按一下 F12 打开控制台,点击 Console 这一项。

js调试系列 初识控制台

可以看到我的头像和几行文字,不过下面还有几行东西,我们暂时先忽略,以后会讲解的。
其实对于这 F12 而言,最确切的叫法是开发人员工具,Console 这一项才是控制台。
PS:做为基础教程,我只介绍 Console 和 Sources 方面的调试,其他功能自己去了解吧。。

点击右键的 Clear console 菜单 或者 输入 clear() 然后按回车即可清空控制台内容。
我们进行第一步用 console.log 输出信息吧。
分别输入 console.log("hehe..") 和 console.log("hehe..", "haha..") 然后按回车,可以在控制台看到输出结果。

js调试系列 初识控制台

其实就是输出信息而,非常简单,用他代替 alert 和 document.write 调试,你的工作会变的非常轻松的。

例如调试一个循环这部分的代码,可是数组里却有几十个甚至上百个元素,alert 的话你会点疯掉的,
document.write 也不是不行,但是对于对象输出,你只能看到 [object Object] 这样的东西。
这是很多新人朋友遇到的真实问题。

如果用 console.log 代替 alert document.write 输出对象信息,可以在控制台展开这对象查看具体信息。
例如:

var arr = [{name: "尼玛", age: 22}, {name: "尼美", age: 20}];
for (var i=0; i<arr.length; i++) {
	console.log(arr[i]);
}

js调试系列 初识控制台

可以直接看到对象信息,而不会显示 [object Object] 令我们一头雾水。
js调试系列 初识控制台

是不是突然觉得 console.log ?疟?耍?br /> 其实这只是他的冰山一角而已,我会尽量把他的一些优势都展现给你们看。
继续刚才的步骤,现在我们直接输入 arr 然后回车。
js调试系列 初识控制台

是不是更吊了,现在可以直接点击 Object 展开这个数组内的对象进行查看了,连循环输出都省了。
这就是控制台的魅力,而且这只是他最基础的功能而已。

我们先来认识下 console 对象下还有那些方法供我们使用吧。
输入 console 然后回车,展开这个对象,
js调试系列 初识控制台
可以看一些深色和浅色的东西,深色的就是我们可以直接调用的方法了,浅色的表示默认属性或方法,展示无需关心,以后有机会再说。
其实常用的只有 log dir 而已,其他真心很少用,到高级调试才会用上。
group,table 之类的辅助性质,可用可不用,看你喜好了。我不太喜欢用。

我们走一步看一步吧,反正先从 log dir 说起,大部分的调试就靠他们了。
PS:其实应该给你们官方文档的,可是最近谷歌打不开,所以自行百度查看各个方法的功能吧。

找到个中文版,还不错,各位看先《console对象》。

来几个课后练习:(先打开百度,然后打开控制台)
1 在控制台查看 ID 为 kw1 的元素信息
2 然后用 console.dir 方法查看 kw1 元素的信息

Javascript 相关文章推荐
使一个函数作为另外一个函数的参数来运行的javascript代码
Aug 13 Javascript
用js查找法实现当前栏目的高亮显示的代码
Nov 24 Javascript
风吟的小型JavaScirpt库 (FY.JS).
Mar 09 Javascript
js实现杯子倒水问题自动求解程序
Mar 25 Javascript
使用JavaScript 编写简单计算器
Nov 24 Javascript
Jquery时间轴特效(三种不同类型)
Nov 02 Javascript
javaScript+turn.js实现图书翻页效果实例代码
Feb 16 Javascript
深入理解JavaScript 中的执行上下文和执行栈
Oct 23 Javascript
Vue实现固定定位图标滑动隐藏效果
May 30 Javascript
vue+webpack 更换主题N种方案优劣分析
Oct 28 Javascript
vue+element导航栏高亮显示的解决方式
Nov 12 Javascript
vue 路由缓存 路由嵌套 路由守卫 监听物理返回操作
Aug 06 Javascript
ext前台接收action传过来的json数据示例
Jun 17 #Javascript
Ext GridPanel加载完数据后进行操作示例代码
Jun 17 #Javascript
ext中store.load跟store.reload的区别示例介绍
Jun 17 #Javascript
基于jquery实现的文字向上跑动类似跑马灯的效果
Jun 17 #Javascript
javascript setinterval 的正确语法如何书写
Jun 17 #Javascript
ext combobox动态加载数据库数据(附前后台)
Jun 17 #Javascript
JavaScript实现简单图片滚动附源码下载
Jun 17 #Javascript
You might like
PHP var_dump遍历对象属性的函数与应用代码
2010/06/04 PHP
PHP设计模式之装饰者模式
2012/02/29 PHP
php中过滤非法字符的具体实现
2013/10/29 PHP
thinkPHP引入类的方法详解
2016/12/08 PHP
浅谈socket同步和异步、阻塞和非阻塞、I/O模型
2016/12/15 PHP
开发跨浏览器javascript常见注意事项
2009/01/01 Javascript
Ext grid 添加右击菜单
2009/11/26 Javascript
javascript自动改变文字大小和颜色的效果的小例子
2013/08/02 Javascript
从js向Action传中文参数出现乱码问题的解决方法
2013/12/29 Javascript
动态添加option及createElement使用示例
2014/01/26 Javascript
javascript中attribute和property的区别详解
2014/06/05 Javascript
使用jquery动态加载js文件的方法
2014/12/24 Javascript
JS+CSS实现实用的单击输入框弹出选择框的方法
2015/02/28 Javascript
jQuery实现仿百度首页滑动伸缩展开的添加服务效果代码
2015/09/09 Javascript
纯JS打造网页中checkbox和radio的美化效果
2016/10/13 Javascript
js上传图片预览的实现方法
2017/05/09 Javascript
bootstrap paginator分页前后台用法示例
2017/06/17 Javascript
jQuery实现的表格前端排序功能示例
2017/09/18 jQuery
JavaScript模块详解
2017/12/18 Javascript
vue实现点击隐藏与显示实例分享
2019/02/13 Javascript
python里大整数相乘相关技巧指南
2014/09/12 Python
python list排序的两种方法及实例讲解
2017/03/20 Python
Python 闭包的使用方法
2017/09/07 Python
利用scrapy将爬到的数据保存到mysql(防止重复)
2018/03/31 Python
tensorflow实现简单的卷积神经网络
2018/05/24 Python
浅谈Pycharm最有必要改的几个默认设置项
2020/02/14 Python
解决echarts中饼图标签重叠的问题
2020/05/16 Python
PyCharm Ctrl+Shift+F 失灵的简单有效解决操作
2021/01/15 Python
九年级历史教学反思
2014/01/27 职场文书
《跨越海峡的生命桥》教学反思
2014/02/24 职场文书
资源工程专业毕业生求职信
2014/02/27 职场文书
项目施工员岗位职责
2014/03/09 职场文书
2015年社区纪检工作总结
2015/04/21 职场文书
2015年质检工作总结
2015/05/04 职场文书
2016继续教育研修日志
2015/11/13 职场文书
CocosCreator ScrollView优化系列之分帧加载
2021/04/14 Python