浏览器控制台console的使用
前天在团队项目中因为产品需求在提交订单的时候需要多个页面的数据作为提交接口的参数,这种需求让人醉醉的,项目用angular来做的,没办法只能用全局变量来定义要交互的值和localStorage来临时的将数据存在浏览器,话不多少进入正题。
用JS组装的JS对象在存入localStorage的时候要用JSON.stringify转成JSON对象才能正确的存起来,同理取得时候也要用JSON.parse来将JSON对象转化成JS对象才能在前端正常使用。当时在控制台打印从localStorage获取到的数据的时候发现打印的字体颜色是黑色的(chrome),当时控制台还有其他颜色的打印项。
平时天天使用console,这次才真正的发现console的一些小的细节,不同的数据类型在console打印的颜色是不一样的,于是带着兴趣研究了一番。

上图分别测试了JS的数据类型Number,String,Null,Undefined,Boolean以及Object在consol的打印结果,可以看出来在浏览器中(chrome)打印出对应的类型的颜色是不一样的,Number类型的数据偏向蓝色、Boolean类型的数据偏向紫红色,Null和Undefined的颜色值是灰色,当愕然Array和Object的特点就更明显了,一个带中括号一个有大括号很便于我们识别。当然也可以自定义console打印的字体颜色。
如果把对应的数据类型在浏览器console中对应的颜色的话在开发中或多或少能让我们从控制台中看到数据对应的类型,这样是可以提高我们的开发效率的。
平时项目开发中console对象正常情况下用的比较多的方法应该就是console.log()方法,除此之外console还有其它的一些方法,我们可以在控制台输出 console.log(console)来查看下。

这就是console对象下面所有的方法。不同的方法在浏览器控制台有不同的表现方式:
这里仅仅举例几种方法,可以看出console不同的方法在控制台还是有不同的表现的。
这里说说console的根源,console并不属于原生JS的,原生JS并没有console对象,它是浏览器提供的用于用户便于访问控制台的对象,因此在不同的浏览器里面console的效果也可能会有一些差异。
开发用用的和console类似的alert,confirm,prompt等弹框也是浏览器自带的行为,区别在于console不影响代码的执行但是alert,confirm,prompt弹框弹出的时候回阻断代码的执行。
因为console,alert,confirm,prompt等这些浏览器自带的对象只能依赖于浏览器才会有效,所以对于要打包的APP上线的时候是要避免使用这些对象的,用的多的应该是弹框,这时候要自己写一个弹框插件或者找第三方插件来实现功能。
每天进步一点点
浏览器控制台console的使用的更多相关文章
- 浏览器控制台console
console对象 console对象代表浏览器的JavaScript控制台.虽然它还不是标准,但是各大浏览器都原生支持,已经成为事实上的标准. console对象主要有两个作用: 显示网页代码运行时 ...
- chrome浏览器控制台 console不打印信息问题解决办法
谷歌浏览器控制台不能显示consle打印的东西,我记得之前可以正常打印,代码没问题,可能是你在浏览器中无意间点到了fifter,我们2可以使用最简单粗暴的方法---->恢复默认值. 按下F12, ...
- chrome浏览器控制台 console不打印信息问题解决办法。
转自:https://blog.csdn.net/wang17866603359/article/details/79083776 最近换了安装chrome,想按F12调试下代码,发现控制台什么信息都 ...
- 如何在浏览器控制台(console)里输出彩色样式调试信息
console.log(XX,XX,XX) log 的第一个参数声明第二.第三个参数的作用,第二个参数就是样式,第三个参数是要输出的字符串 console.log("%c%s", ...
- console.debug()浏览器控制台打印输出 仅仅在支持console的浏览器下打印
console.debug()浏览器控制台打印输出 仅仅在支持console的浏览器下打印 var util = {}; /** * 工具类 */ util = new function() { /* ...
- 不依赖浏览器控制台的JavaScript断点调试方法
随着浏览器的逐渐强大,绝大多数情况下的代码调试都是可以通过浏览器自带的一些调试工具进行解决.然而对于一些特殊情况仍然无法享受到浏览器的强大 调试能力,比如QQ客户端内嵌web的调试(虽然说QQ目前已经 ...
- 1.Google Chrome浏览器 控制台全解析
Google Chrome浏览器 控制台全解析 在Google Chrome浏览器出来之前,我一直使用FireFox,因为FireFox的插件非常丰富,更因为FireFox有强大的Firebug,对于 ...
- vue 在浏览器控制台怎么调试 谷歌插件vue Devtools
vue 在浏览器控制台怎么调试 谷歌插件vue Devtools 问题: vuejs里面的变量,怎么用浏览器的console查看? 例如,想在chrome里用console.log查看变量$data, ...
- 为什么浏览器控制台返回不是undefined,而是一串数字
setTimeout( (function(){console.log("ok")} )(), 16) 在浏览器控制台输入这段代码的时候返回的不是"undefined&q ...
随机推荐
- MongoDB入门命令
查看所有数据库 > show dbs admin (empty) local 0.078GB > admin和管理相关, admin和local数据库不要轻易动 选择库 > use ...
- HDU5742 It's All In The Mind(思维题,水题)
Problem Description Professor Zhang has a number sequence a1,a2,...,an. However, the sequence is not ...
- Hello BlogsPark
2017年8月4日, 今天是使用博客园的第一天, 签个到. NSLog(@"Hello BlogsPark");
- linux下安装log4cplus
wget http://sourceforge.net/projects/log4cplus/files/log4cplus-stable/1.1.2/log4cplus-x.x.x.tar.gz t ...
- HTTP和HTTPS有什么区别? 什么是SSL证书?使用ssl证书优势?
什么是SSL? SSL是指安全套接层协议(以及传输层协议TLS),位于TCP/IP协议与各种应用层协议之间,为数据通讯提供安全支持,是目前使用最广泛的安全协议.它为互联网或内部网络连接,进行操作的两台 ...
- Jmeter - foreach控制器之嵌套使用
有需求如下: 对某分类列表分别上传随机个数的附件内容 由此想到可以使用jmeter自带的foreach控制器来实现,编写代码如下: 如图:两层循环,第一层由上方beashell获取大类列表,如下: 生 ...
- Pycharm快捷键的使用
1.编辑(Editing) Ctrl + Space 基本的代码完成(类.方法.属性)Ctrl + Alt + Space 快速导入任意类Ctrl + Shift + Enter 语句完成Ctrl + ...
- JavaScript版—贪吃蛇小组件
最近在学习JavaScript,利用2周的时间看完了<JavaScript高级编程>,了解了Js是一门面向原型编程的语言,没有像C#语言中的class,也没有私有.公有.保护等访问限制的级 ...
- Shell Script编程——USB挂载/复制文件/查找文件/压缩文件
PS:$引用变量的时候不要加空格.用了case,while的结构. main文件 #!/bin/bash chmod a+x changedate chmod a+x changemod chmod ...
- Android Tv 中的按键事件 KeyEvent 分发处理流程
这次打算来梳理一下 Android Tv 中的按键点击事件 KeyEvent 的分发处理流程.一谈到点击事件机制,网上资料已经非常齐全了,像什么分发.拦截.处理三大流程啊:或者 dispatchTou ...