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更改class和id的方法
Oct 10 Javascript
Mootools 1.2教程 设置和获取样式表属性
Sep 15 Javascript
全面理解面向对象的 JavaScript(来自ibm)
Nov 10 Javascript
节点的插入之append()和appendTo()的用法介绍
Jan 13 Javascript
AngularJS 表达式详细讲解及实例代码
Jul 26 Javascript
浅谈JavaScript的函数及作用域
Dec 30 Javascript
AngularJS的ng-repeat指令与scope继承关系实例详解
Jan 21 Javascript
vue.js中Vue-router 2.0基础实践教程
May 08 Javascript
详解vue渲染从后台获取的json数据
Jul 06 Javascript
jQuery选择器之基本过滤选择器用法实例分析
Feb 19 jQuery
angular异步验证防抖踩坑实录
Dec 01 Javascript
JQuery事件委托(适用于给动态生成的脚本元素添加事件)
Feb 01 jQuery
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中转义mysql语句的实现代码
2011/06/24 PHP
50个PHP程序性能优化的方法
2014/06/02 PHP
php中count获取多维数组长度的方法
2014/11/03 PHP
smarty内置函数capture用法分析
2015/01/22 PHP
php生成RSS订阅的方法
2015/02/13 PHP
在php中设置session用memcache来存储的方法总结
2016/01/14 PHP
实现laravel 插入操作日志到数据库的方法
2019/10/11 PHP
onkeydown事件解决按回车键直接提交数据的需求
2013/04/11 Javascript
jquery中event对象属性与方法小结
2013/12/18 Javascript
setTimeout自动触发一个js的方法
2014/01/15 Javascript
JS图片无缝、平滑滚动代码
2014/03/11 Javascript
JS实现文字向下滚动完整实例
2015/02/06 Javascript
angular中的cookie读写方法
2017/08/02 Javascript
微信小程序 功能函数小结(手机号验证*、密码验证*、获取验证码*)
2017/12/08 Javascript
vue全局使用axios的方法实例详解
2018/11/22 Javascript
微信小程序自定义可滑动日历界面
2018/12/28 Javascript
JS中注入eval, Function等系统函数截获动态代码
2019/04/03 Javascript
纯js+css实现仿移动端淘宝网站的弹出详情框功能
2019/12/29 Javascript
Vue中fragment.js使用方法小结
2020/02/17 Javascript
python合并文本文件示例
2014/02/07 Python
举例讲解Python中的身份运算符的使用方法
2015/10/13 Python
Python的Tornado框架的异步任务与AsyncHTTPClient
2016/06/27 Python
Python自定义简单图轴简单实例
2018/01/08 Python
python游戏开发之视频转彩色字符动画
2019/04/26 Python
python处理“
2019/06/10 Python
python网络编程之多线程同时接受和发送
2019/09/03 Python
pytorch 数据处理:定义自己的数据集合实例
2019/12/31 Python
Python matplotlib修改默认字体的操作
2020/03/05 Python
pandas DataFrame运算的实现
2020/06/14 Python
python打开音乐文件的实例方法
2020/07/21 Python
基于CSS3实现图片模糊过滤效果
2015/11/19 HTML / CSS
意大利体育用品网上商城:Nencini Sport
2016/08/18 全球购物
暑期培训班招生方案
2014/08/26 职场文书
党的群众路线教育实践活动方案
2014/10/31 职场文书
精神文明建设汇报材料
2014/12/24 职场文书
导游词之白茶谷九龙峡
2019/10/23 职场文书