深入分析javascript中console命令


Posted in Javascript onAugust 14, 2016

一、显示信息的命令

代码如下:

<!DOCTYPE html>
<html>
<head>
<title>常用console命令</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<script type="text/javascript">
console.log('hello');
console.info('信息');
console.error('错误');
console.warn('警告');
</script>
</body>
</html>

深入分析javascript中console命令

最常用的就是console.log了。

二:占位符

console上述的集中度支持printf的占位符格式,支持的占位符有:字符(%s)、整数(%d或%i)、浮点数(%f)和对象(%o)

代码如下:

<script type="text/javascript">
console.log("%d年%d月%d日",2016,8,20);
</script>

效果:

深入分析javascript中console命令

三、信息分组

代码如下:

<!DOCTYPE html>
<html>
<head>
<title>常用console命令</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<script type="text/javascript">
 console.group("第一组信息");


console.log("第一组第一条:我的技术博客(https://segmentfault.com/u/learnme)");



console.log("第一组第二条:我的gitHub(https://github.com/specialCoder/)");


console.groupEnd();


 console.group("第二组信息");



console.log("第二组第一条:程序爱好者");



console.log("第二组第二条:欢迎你加入");


 console.groupEnd();
</script>
</body>
</html>

效果:

深入分析javascript中console命令

四、查看对象的信息

console.dir()可以显示一个对象所有的属性和方法。
代码如下:

<script type="text/javascript">
var info = {
blog:"https://segmentfault.com/u/learnme/",
gitHub:"https://github.com/specialCoder/",
message:"程序爱好者欢迎你的加入"
};
console.dir(info);
</script>

效果:

深入分析javascript中console命令

五、显示某个节点的内容

console.dirxml()用来显示网页的某个节点(node)所包含的html/xml代码。
代码如下:

<!DOCTYPE html>
<html>
<head>
<title>常用console命令</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<div id="info">
<h3>我的博客:https://segmentfault.com/u/learnme/
<p>程序爱好者,欢迎你的加入</p>
</div>
<script type="text/javascript">
var info = document.getElementById('info');
console.dirxml(info);
</script>
</body>
</html>

效果:

深入分析javascript中console命令

六、判断变量是否是真

console.assert()用来判断一个表达式或变量是否为真。如果结果为否,则在控制台输出一条相应信息,并且抛出一个异常。
Assert(断言)是一个很好的用于保证程序正确性的特性。在具备调试工具的浏览器上,这一特性可以通过调用console.assert()来实现。

代码如下:

<script type="text/javascript">
var result = 1;

console.assert( result );

var year = 2014;

console.assert(year===2018,"Assertion failed");
</script>

在console.assert()语句中,第一个参数为需要进行assert的结果,正常情况下应当为true;第二个参数则为出错时在控制台上打印的错误信息。

1是非0值,是真;而第二个判断是假,在控制台显示错误信息

显示结果:

深入分析javascript中console命令

七、追踪函数的调用轨迹

console.trace()用来追踪函数的调用轨迹。
代码如下:

<script type="text/javascript">
/*函数是如何被调用的,在其中加入console.trace()方法就可以了*/
function add(a,b){
console.trace();


return a+b;

}

var x = add3(1,1);

function add3(a,b){return add2(a,b);}

function add2(a,b){return add1(a,b);}

function add1(a,b){return add(a,b);}
</script>

控制台输出信息:

深入分析javascript中console命令

八、计时功能

console.time()和console.timeEnd(),用来显示代码的运行时间。
代码如下:

<script type="text/javascript">
console.time("计数1000*1000");

for(var i=0;i<1000;i++){


for(var j=0;j<1000;j++){}

}

console.timeEnd("计数1000*1000");
</script>

运行时间是10.64ms

深入分析javascript中console命令

九、console.profile()的性能分析

性能分析(Profiler)就是分析程序各个部分的运行时间,找出瓶颈所在,使用的方法是console.profile()。
代码如下:

<script type="text/javascript">
function All(){
alert(11);


  for(var i=0;i<10;i++){
funcA(1000);
}


 funcB(10000);

 }


function funcA(count){


for(var i=0;i<count;i++){}

}


function funcB(count){


for(var i=0;i<count;i++){}

}


console.profile('性能分析器');

All();

console.profileEnd();
</script>

深入分析javascript中console命令

说明一下,LZ测试时,在All()中未加alert,控制条没有输出,加上了之后,就有了一张性能分析表,暂时不清楚原因,若你知道,可以评论。

Javascript 相关文章推荐
Extjs4中tree的拖拽功能(可以两棵树之间拖拽) 简单实例
Dec 08 Javascript
jquery分页对象使用示例
Apr 01 Javascript
JavaScript实现节点的删除与序号重建实例
Aug 05 Javascript
jquery对象和DOM对象的任意相互转换
Feb 21 Javascript
Node.js DES加密的简单实现
Jul 07 Javascript
jQuery EasyUI基础教程之EasyUI常用组件(推荐)
Jul 15 Javascript
JS实用的带停顿的逐行文本循环滚动效果实例
Nov 23 Javascript
node.js与C语言 实现遍历文件夹下最大的文件,并输出路径,大小
Jan 20 Javascript
原生JS实现图片无缝滚动方法(附带封装的运动框架)
Oct 01 Javascript
详解webpack-dev-server 设置反向代理解决跨域问题
Apr 18 Javascript
vue-cli脚手架的.babelrc文件用法说明
Sep 11 Javascript
vue使用节流函数的踩坑实例指南
May 20 Vue.js
Vue.js 表单校验插件
Aug 14 #Javascript
Vue.js学习笔记之 helloworld
Aug 14 #Javascript
详解Node.js如何开发命令行工具
Aug 14 #Javascript
javascript中的 object 和 function小结
Aug 14 #Javascript
JavaScript兼容浏览器FF/IE技巧
Aug 14 #Javascript
关于JavaScript限制字数的输入框的那些事
Aug 14 #Javascript
使用ajaxfileupload.js实现上传文件功能
Aug 13 #Javascript
You might like
用PHP调用Oracle存储过程
2006/10/09 PHP
PHP高级对象构建 工厂模式的使用
2012/02/05 PHP
PHP利用str_replace防注入的方法
2013/11/10 PHP
PHP错误Allowed memory size of 67108864 bytes exhausted的3种解决办法
2014/07/28 PHP
JavaScript Cookie显示用户上次访问的时间和次数
2009/12/08 Javascript
jQuery 锚点跳转滚动条平滑滚动一句话代码
2010/04/30 Javascript
jQuery 1.5.1 发布,全面支持IE9 修复大量bug
2011/02/26 Javascript
如何将JS的变量值传递给ASP变量
2012/12/10 Javascript
纯js网页画板(Graphics)类简介及实现代码
2012/12/24 Javascript
jquery validate添加自定义验证规则(验证邮箱 邮政编码)
2013/12/04 Javascript
javascript拖拽效果延伸学习
2016/04/04 Javascript
详解JavaScript中的自定义事件编写
2016/05/10 Javascript
再谈javascript注入 黑客必备!
2016/09/14 Javascript
vue2滚动条加载更多数据实现代码
2017/01/10 Javascript
微信小程序实现轮播图效果
2017/09/07 Javascript
vue中子组件向父组件传递数据的实例代码(实现加减功能)
2018/04/20 Javascript
vue路由组件按需加载的几种方法小结
2018/07/12 Javascript
vue 解决循环引用组件报错的问题
2018/09/06 Javascript
vue动态配置模板 'component is'代码
2019/07/04 Javascript
Node.js API详解之 tty功能与用法实例分析
2020/04/27 Javascript
[46:55]Ti4 冒泡赛第二轮 LGD vs C9
2014/07/14 DOTA
Python中的两个内置模块介绍
2015/04/05 Python
构建Python包的五个简单准则简介
2015/06/15 Python
Python爬取数据并写入MySQL数据库的实例
2018/06/21 Python
Python实现随机创建电话号码的方法示例
2018/12/07 Python
Python多线程同步---文件读写控制方法
2019/02/12 Python
CentOS 7如何实现定时执行python脚本
2020/06/24 Python
keras分类模型中的输入数据与标签的维度实例
2020/07/03 Python
史上最全面的Java面试题汇总!
2015/02/03 面试题
母亲七十大寿答谢词
2014/01/18 职场文书
《狼》教学反思
2014/03/02 职场文书
欠款纠纷起诉状
2015/05/19 职场文书
2019单位介绍信怎么写
2019/06/24 职场文书
详解jQuery的核心函数和事件处理
2022/02/18 jQuery
我家女友可不止可爱呢 公开OP主题曲无字幕动画MV
2022/04/11 日漫
Python中的协程(Coroutine)操作模块(greenlet、gevent)
2022/05/30 Python