控制台之console
控制台中的用法有很多,比如常用的console.log(),还有不常用的 console.warn()、 console.error()等,下面对控制台中主要的console方法做一个简单的介绍。
1. console.assert()
这个方法接受至少两个参数,第一个参数是一个布尔值,如果这个布尔值为 true, 那么后面的参数将不会被打印出来; 如果是false,那么后面的参数将依次被打印出来。
console.assert(false, "显示");
2. console.clear()
这个方法可以清空控制台,无参数接受。
3. console.count()
这个方法最多可以接受一个参数,也可以不接受参数。
如果无参数,那么console.count()表示在当前位置被调用的次数,如果接受参数,如console.count("person"), 则会统计 console.count("person") 被调用的次数。
4. console.dir()
这个方法传递的可以是一个对象,可以和 console.log做对比,发现,console.dir() 就像一个目录一样,是一个折叠的三角形列表。
5. console.dirxml()
这个方法同样也是传递一个HTML容器对象, 如 console.dirxml(document.body) ,如果不是一个html容器对象,那么传递一个JavaScript对象也是可以的。
6. console.group() && console.groupEnd()
这个方法可以建立一个分组,当然分组也是可以嵌套的。 以 console.group() 作为开始, 以 console.groupEnd() 作为结束,他们都会被缩进,并且可以被折叠。
console.log("不是分组");
console.log("不是分组");
console.log("不是分组");
console.group("group开始");
console.log("在分组中");
console.log("在分组中");
console.log("在分组中");
console.log("在分组中");
console.groupEnd();
console.log("不是分组");
console.log("不是分组");
console.log("不是分组");
console.log("不是分组");

7. console.groupCollapsed() 和 console.groupEnd()
刚才所讲的 console.group() 所建立的分组默认是折叠的, 而console.groupCollapsed() 默认是折叠的。
所以在调试代码的过程中,利用分组、折叠这个特性,应该可以让我们调试代码更容易一些。
8. console.profile() 和 console.profileEnd()
记录性能。暂时不支持使用。
9. console.table()
可以将数组和对象按照table的方式打印出来,可以接收第二个参数,这个参数表示列数。
10. console.time() 和 console.timeEnd()
需要接受一个字符串作为参数,用来统计执行的时间。
11. console.trace()
进行栈的跟踪。
补充: console.table可以用于显示对象以及属组,这样,我们就可以更好的在控制台中查看。 之前做过一个二维温度场变化的程序,通过微分方程离散化之后就可以进行模拟了,程序如下:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>温度场数值模拟</title>
</head>
<body>
<script>
// 定义二维数组,存储温度。
let t = [],
tl = []; // 定义微分方程离散化的相关数据
const Interval = , // 时间步长
CoolingTime = , // 最长运行时间
n = , // 使用n倍步长统计中心点温度变化
xInterval = , // δx
yInterval = ; // δy const Difu = 0.05, // 扩散系数
T0 = , // 初始温度
Tw = , // 边界温度
L1 = , // 二维界面宽度
L2 = , // 二维界面高度
xLen = L1/xInterval + , // T矩阵的行数
yLen = L2/yInterval + , // T矩阵的列数
M1 = (Difu * Interval) / Math.pow(xInterval, ), // M1常系数
M2 = (Difu * Interval) / Math.pow(yInterval, ); // M2常系数 // 稳定性条件判断
let r = /( * Difu * (( / Math.pow(xInterval, )) + ( / Math.pow(yInterval, ))));
console.log('时间步长:', Interval);
console.log('等式右边:', r);
if (Interval > r) {
console.error('不满足稳定性条件!');
} else {
console.log('%c满足稳定性条件!', 'color: green;font-weight: bold');
}
console.log('');
console.log(''); // 赋值初始温度
for (let i = ; i < xLen; i++ ) {
t[i] = [];
tl[i] = [];
for (let j = ; j < yLen; j++) {
t[i][j] = tl[i][j] = T0;
}
} // 输出初始温度
console.log('%c初始温度: ' , 'color: purple; font-weight: bold');
console.table(t);
console.log(' ');
console.log(' '); // 判断是否处于边界
function isBorder(x, y) {
return (x == || y == || x == xLen - || y == yLen - );
} // 记录中心点数据
let mid = {}; // 当前时间初始化
let time = ; while (time < CoolingTime * ) {
// 计算最新时刻温度
for (let i = ; i < xLen; i++ ) {
for (let j = ; j < yLen; j++) { // 判断是否处于边界
if (isBorder(i, j)) {
tl[i][j] = Tw;
} else {
// 使用离散化的各单元温度计算公式。
tl[i][j] = M1 * (t[i - ][j] + t[i + ][j])
+ M2 * (t[i][j - ] + t[i][j + ])
+ ( - * M1 - * M2) * t[i][j];
tl[i][j] = Number(tl[i][j].toFixed());
}
}
}
t = tl; // 记录中心点数据(使用n倍步长统计)
if (time % (n * Interval) == ) {
mid[time + 's'] = t[parseInt(xLen/)][parseInt(yLen/)];
}
time += Interval;
}
// 获取各个时间段的内部温度场
console.log('%c' + CoolingTime + 'min后的物体内部温度场: ', 'color: green; font-weight: bold');
console.table(t);
console.log(' ');
console.log(' '); // 获取中心点的各个时间段。
console.log('%c中心点的温度变化', 'color: red; font-weight: bold');
console.table(mid);
</script>
</body>
</html>
通过使用console.table,我们可以看到控制台如下所示:

控制台之console的更多相关文章
- 控制台(Console)报错:java.io.IOException: Broken pipe
控制台(Console)输出: java.io.IOException: Broken pipe at sun.nio.ch.FileDispatcherImpl.write0(Native Meth ...
- 前端开发调试工具控制台之console命令详解
控制台(Console)是Firebug的第一个面板,也是最重要的面板,主要作用是显示网页加载过程中产生各类信息. 一.显示信息的命令 Firebug内置一个console对象,提供5种方法,用来显示 ...
- WinForm程序启动控制台窗口Console
本文转载:http://blog.csdn.net/oyi319/article/details/5753311 2.WinForm程序和控制台窗口Console 如果你调试过SharpDevelop ...
- js控制台输出console
介绍: js的console你可以在firefox的firedbug或者ie和google的f12调试模式下看到,这些主流浏览器的调试模式的控制可以输出一些信息,你的一些js代码测试可以直接在cons ...
- .NET Core创建一个控制台(Console)程序
.NET Core版本:1.0.0-rc2 Visual Studio版本:Microsoft Visual Studio Community 2015 Update 2 开发及运行平台:Window ...
- PHP内置Web Server探究(二)自定义PHP控制台输出console函数
我们在开发APP的服务器端,当和APP进行联调时通常需要实时跟踪URL请求和参数的接收情况. 但PHP并没有像Python或Java专有的控制台输出函数,Python的print()和Java的Sys ...
- [No0000193]Chrome浏览器控制台(console)花式调试
对前端开发者来说,Chrome Dev Tools(开发者工具,以下简称CDT)是一个不可或缺的开发调试工具,但是你可能只用过console.log(),却不知道console还有很多功能强大的调试方 ...
- delphi 在线程中运行控制台命令(console)
在编程开发的时候,我们时常会调用windows本身的功能,如:检测网络通断,连接无线wifi等. 虽然,用 windows api 操作可以完美地完成这些操作,但是,函数参数太难了.令人望而生畏,不是 ...
- C#WinForm程序显示控制台窗口Console
启动一个WINFORM项目,使用一些API函数将控制台显示出来: AllocConsole 和 FreeConsole. 本程序只在DEBUG模式下显示控制台 [DllImport("ker ...
随机推荐
- 【Android学习】Android工程资源命名禁忌
在制作一个继续按钮时,将button的id设置为continue,发现报了错误,error: invalid symbol: 'continue' 一开始还以为是编码问题,后来百度之后才知道安卓And ...
- 见过最好的mybatis学习网站
http://blog.csdn.net/techbirds_bao/article/details/9233599/
- 百度离线地图API开发V2.0版本
全面介绍,请看下列介绍地址,改写目前最新版本的百度V2.0地图,已全面实现离线操作,能到达在线功能的95%以上 http://api.jjszd.com:8081/apituiguang/gistg. ...
- 游戏中遇到的BUG
(1)bug描述:战斗中有英雄死亡,一方掉线之后再次上线,仍然可以看到死亡英雄空血条(英雄受到攻击才会显示血条) 解决方案:原来 当前血量小于英雄血量最大值时,证明英雄受到伤害,血条显示为true I ...
- MySql8.0后密码认证方式问题[caching-sha2-password]
这个问题通常在laravel中表现为类似下边的异常: local.ERROR: SQLSTATE[HY000] [2006] MySQL server has gone away {"exc ...
- 使用Eclipse的几个必须掌握的快捷方式
“工若善其事,必先利其器”,感谢Eclipse,她 使我们阅读一个大工程的代码更加容易,在阅读的过程中,我发现掌握几个Eclipse的快捷键会使阅读体验更加流畅,写出来与诸君分享,欢迎补充. 1. C ...
- Kafka,Mq,Redis作为消息队列有何差异?
Kafka作为新一代的消息系统,mq是比较成熟消息系统,而redis也可以发布订阅,那么这三者有何异同? RabbitMQ 是使用Erlang编写的一个开源的消息队列,本身支持很多的协议:AMQP,X ...
- java集合类学习笔记之LinkList
1.简述 LinkList的底层其实就是一个双向链表,所谓的链表就是一个LinkList内部静态静态类(Node),对LinkList的所有操作本质上就是通过对LinkList中新建的Node对象 进 ...
- (转)Delphi7中QuickReport组件(QReport报表)安装方法及重要属性
Delphi7中没有办法直接使用QuickReport组件,因为在Delphi7中没有将QuickReport组件包作为默认组件打包,如果要使用此组件,需要先安装一下. 打开delphi7,点 ...
- WebApi接口 - 响应输出xml和json 转
格式化数据这东西,主要看需要的运用场景,今天和大家分享的是webapi格式化数据,这里面的例子主要是输出json和xml的格式数据,测试用例很接近实际常用情况:希望大家喜欢,也希望各位多多扫码 ...