当前位置:美高梅官方网站59599 > 前端科技 > 未经小编许可,只是使用简易的console.log()

未经小编许可,只是使用简易的console.log()

文章作者:前端科技 上传时间:2019-10-13

debug & undebug

debug同样也是接到三个函数名作为参数。当该函数试行时自动断下来以供调节和测量检验,类似于在该函数的入口处打了个断点,能够透过debugger来做到,同一时候也足以透过在Chrome开拓者工具里找到相应源码然后手动打断点。
undebug 则是解除该断点。

而别的还大概有不菲命令则让人从没说的私欲,因为不菲都足以由此Chrome开拓者工具的UI分界面来操作并且比用在支配台输入要有扶助。

[图形上传中。。。(14)]

keys & values

这是一对亲密的朋友。前面二个再次回到传入对象具有属性名组成的数据,前面一个再次来到全数属性值组成的数组。具体请看上面包车型地铁事例:

JavaScript

var tboy={name:'wayou',gender:'unknown',hobby:'opposite to the gender'}; keys(tboy); values(tboy);

1
2
3
var tboy={name:'wayou',gender:'unknown',hobby:'opposite to the gender'};
keys(tboy);
values(tboy);

图片 1

输出一些调节和测验新闻是调控台最常用的功力,当然,它的功力远不唯有于此。当做一些性质测量试验时,一样能够在那地很有益于地开展。比方需求考虑衡量一段代码实施的耗时情状时,能够用console.time与 console.timeEnd来做那一件事。

monitor & unmonitor

monitor(function),它接受二个函数名作为参数,比如function a,每次a被推行了,都会在支配台出口一条音讯,里面包蕴了函数的称呼a及实行时所传颂的参数。

而unmonitor(function)就是用来终止这一监听。

JavaScript

function sayHello(name){ alert('hello,'+name); } monitor(sayHello); sayHello('wayou'); unmonitor(sayHello); sayHello('wayou');

1
2
3
4
5
6
7
function sayHello(name){
alert('hello,'+name);
}
monitor(sayHello);
sayHello('wayou');
unmonitor(sayHello);
sayHello('wayou');

图片 2

Chrome浏览器笔者想是每一个前端er必用工具之一吧,一部分缘故是它速度快,体量非常小,帮衬的新特点也比其余浏览器多,还大概有一部分自己想就是因为它的调节台成效强盛了啊,说它是神器一点也可是分,很便利。但实际上过多开荒者并未用出调控台的经典,只是利用简易的console.log();其实调节台成效远远不独有如此简单哦。

copy

由此此命令能够将要调控台获取到的剧情复制到剪贴板。

JavaScript

copy(document.body)

1
copy(document.body)

接下来您就足以处处粘了:

图片 3

看完此条命令行,机智的您是否跟脑洞全开的自个儿同样,冒出了那样多个设法:那正是经过那些命令能够在JavaScript里打开复制操作从而不用信赖Flash插件了。
But现实是残酷的,如此前所述的,这里的主宰台命令只好在调控桃园景况中实行,因为她反对附于任何全局变量比如window,所以其实在JS代码里是访问不了那几个copy措施的,所以从代码层面来调用复制作而成效也就无从聊起。但愿有天浏览器会提供相应的JS完毕啊~

图片 4

console.time & console.timeEnd

输出一些调节和测验新闻是调节台最常用的效果,当然,它的效果远不仅仅于此。当作一些属性测量检验时,同样能够在这间很有益于地扩充。
譬喻须求勘察一段代码实施的耗费时间情形时,能够用console.time与 console.timeEnd来做那一件事。

那边借用官方文书档案的例子:

JavaScript

console.time("Array initialize"); var array= new Array(1000000); for (var i = array.length - 1; i >= 0; i--) { array[i] = new Object(); }; console.timeEnd("Array initialize");

1
2
3
4
5
6
console.time("Array initialize");
var array= new Array(1000000);
for (var i = array.length - 1; i >= 0; i--) {
    array[i] = new Object();
};
console.timeEnd("Array initialize");

图片 5

自然,我们也得以选取本身写代码来计时:

JavaScript

var start=new Date().getTime(); var array= new Array(1000000); for (var i = array.length - 1; i >= 0; i--) { array[i] = new Object(); }; console.log(new Date().getTime()-start);

1
2
3
4
5
6
var start=new Date().getTime();
var array= new Array(1000000);
for (var i = array.length - 1; i >= 0; i--) {
    array[i] = new Object();
};
console.log(new Date().getTime()-start);

图片 6

信赖你也见到了,用内置的console.time是何等地点便,省去了协和写代码来测算的专门的工作量。别的值得一说的是,通过调用内置的console.time获得的结果要比本人手动计算的年华差越来越纯粹可相信。

图片 7

console.profile & console.timeLime

当想要查看CPU使用相关的新闻时,能够行使console.profile配合 console.profileEnd来实现这几个需求。
这一功能能够透过UI界面来成功,Chrome 开荒者工具里面有个tab就是Profile

与此类似的法力还应该有console.timeLine配合 console.timeLineEnd,它的成效是开端记录一段时间轴,同样能够透过Chrome开垦者工具里的Timeline 标签来举行对应操作。

于是以笔者之见这四个办法有个别鸡肋,因为都能够经过操作分界面来成功。但最少她提供了一种命令行方式的互相,依旧多了种姿势供接纳吧。

别的值得一赞的是,Chrome 调整台北原生补助类jQuery的选拔器,也正是说你能够用$加上熟识的css采取器来选拔DOM节点,多么滴熟习。

console.assert

当您想代码满意有个别准则时才输出消息到调整台,那么你无需写if大概安慕希表达式来完结目的,cosole.assert正是那样境况下一种很好的工具,它会先对传播的表明式进行预感,唯有表明式为假时才输出相应音信到调整台。

JavaScript

var isDebug=false; console.assert(isDebug,'开辟中的log新闻。。。');

1
2
var isDebug=false;
console.assert(isDebug,'开发中的log信息。。。');

图片 8

console.dir(document.body);
console.log(document.body);

console.count

除去标准输出的情景,还应该有广阔的光景是计数。
当你想总计某段代码实施了不怎么次时也无需自身去写相关逻辑,内置的console.count能够很地胜任那样的职分。

JavaScript

function foo(){ //其余函数逻辑blah blah。。。 console.count('foo 被实践的次数:'); } foo(); foo(); foo();

1
2
3
4
5
6
7
function foo(){
//其他函数逻辑blah blah。。。
console.count('foo 被执行的次数:');
}
foo();
foo();
foo();

图片 9

世家都会用log,但很罕见人能够很好地采纳console.error,console.warn 等将出口到调控台的音讯进行分类整理。他们成效分别一点都不大,意义在于将出口到调控台的音讯实行分拣,可能说让它们更语义化。

有关小编:刘哇勇

图片 10

放浪不急爱自由 个人主页 · 笔者的小说 · 17 ·   

图片 11

$(selector)重回的是满意接纳规范的第多个DOM成分。

console.log

世家都会用log,但鲜有人很好地应用console.error , console.warn 等将出口到调控台的新闻举办分类整理。
他俩成效界别十分的小,意义在于将出口到调控台的音信举办归类,或许说让它们更语义化。
梯次所表示的语义如下:

  • console.log:普通消息
  • console.info:提醒类消息
  • console.error:错误消息
  • console.warn:警告新闻

当合理运用上述log方法后,可以相当低价地在调整台接纳查看特定类型的消息。

JavaScript

console.log('一颗红心向太阳','吼吼~'); console.info('楼上药无法停!'); console.warn('楼上嘴太贱!'); console.error('楼上关你毛事?');

1
2
3
4
console.log('一颗红心向太阳','吼吼~');
console.info('楼上药不能停!');
console.warn('楼上嘴太贱!');
console.error('楼上关你毛事?');

图片 12

假设再协作console.group 与console.groupEnd,能够将这种分类管理的思考发挥到极致。那适合于在付出一个规模比不小模块比相当多很复杂的Web APP时,将独家的log新闻分组到以独家命名空间为名称的组里面。

JavaScript

console.group("app.foo"); console.log("来自foo模块的音信 blah blah blah..."); console.groupEnd(); console.group("app.bar"); console.log("来自bar模块的新闻 blah blah blah..."); console.groupEnd();

1
2
3
4
5
6
console.group("app.foo");
console.log("来自foo模块的信息 blah blah blah...");
console.groupEnd();
console.group("app.bar");
console.log("来自bar模块的信息 blah blah blah...");
console.groupEnd();

图片 13

而关于console.log,早就被作弄坏了。一切都出自Chrome提供了那般三个API:第八个参数能够分包部分格式化的吩咐譬喻%c

比如给hello world 做件赏心悦指标嫁衣再拉出来见人:

JavaScript

console.log('%chello world','font-size:25px;color:red;');

1
console.log('%chello world','font-size:25px;color:red;');

图片 14

一旦您认为远远不够过瘾,那就把你能写出来的最华丽的CSS样式都应用上呢,比方渐变。于是你能够收获如下华丽丽的功力:

JavaScript

console.log('%chello world', 'background-image:-webkit-gradient( linear, left top, right top, color-stop(0, #f22), color-stop(0.15, #f2f), color-stop(0.3, #22f), color-stop(0.45, #2ff), color-stop(0.6, #2f2),color-stop(0.75, #2f2), color-stop(0.9, #ff2), color-stop(1, #f22) );color:transparent;-webkit-background-clip: text;font-size:5em;');

1
console.log('%chello world', 'background-image:-webkit-gradient( linear, left top, right top, color-stop(0, #f22), color-stop(0.15, #f2f), color-stop(0.3, #22f), color-stop(0.45, #2ff), color-stop(0.6, #2f2),color-stop(0.75, #2f2), color-stop(0.9, #ff2), color-stop(1, #f22) );color:transparent;-webkit-background-clip: text;font-size:5em;');

图片 15

各样招大招的韵律啊~

瞅着地方密集的代码不用惊悸,下面console.log()第1个参数全部是纯CSS用来决定样式的,你不会不熟悉。而首先个参数里可以带用百分号初始的转义指令,如上边输出带样式的文字时选用的%c命令。更详细的通令参见官方API文书档案的其一表格。

设若还相当不足过瘾,那大家来log一些图片吧,以至。。。动图?
对,你得先有图,大家拿这张图为例。

JavaScript

console.log("%c", "padding:50px 300px;line-height:120px;backgroundnull:url('') no-repeat;");

1
console.log("%c", "padding:50px 300px;line-height:120px;backgroundnull:url('http://wayou.github.io/2014/09/10/chrome-console-tips-and-tricks/rabbit.gif') no-repeat;");

图片 16

望着地点摆荡的豆比兔是否有种抽它一脸的欢腾。

除此,console.table 更是一向以表格的样式将数据输出,不能赞得太多!
借用从前写过的一篇博文里的例子:

JavaScript

var data = [{'品名': '杜雷斯', '数量': 4}, {'品名': '冈本', '数量': 3}]; console.table(data);

1
2
var data = [{'品名': '杜雷斯', '数量': 4}, {'品名': '冈本', '数量': 3}];
console.table(data);

图片 17

另外,console.log() 接收不定参数,参数间用逗号分隔,最后会输出会将它们以空白字符连接。

JavaScript

console.log('%c你好','color:red;','小明','你精通小红被母亲打了么');

1
console.log('%c你好','color:red;','小明','你知道小红被妈妈打了么');

图片 18

copy(document.body)

console.dir

将DOM结点以JavaScript对象的款式出口到调整台
console.log是一贯将该DOM结点以DOM树的布局实行输出,与在要素核实时看见的结构是完全一样的。差异的变现方式,同样的幽雅,种种体位任君选拔反正就是有助于与关爱。

JavaScript

console.dir(document.body); console.log(document.body);

1
2
console.dir(document.body);
console.log(document.body);

图片 19

[图表上传中。。。(13)]

console.trace

旅社追踪相关的调节和测验能够行使console.trace。那一个同样能够通过UI分界面达成。当代码被打断点后,能够在Call Stack面板中查占卜关货仓音信。

地点介绍的都以挂在window.console本条指标上边包车型地铁不二秘技,统称为Console API,接下去的那一个方法得本地说应该叫命令,是Chrome内置提供,在调整新竹央银行使的,他们统称为Command Line API。

copy

$

有如美刀总是被技师及各个编制程序语言研讨所珍惜「你看看PHP代码就精通PHPer有多爱钱了」,在Chrome的垄断台里,$用处还真是蛮多且便于的。
$_一声令下归来方今叁遍表明式实行的结果,作用跟按提高的方向键再回车是千篇一律的,但它能够做为贰个变量使用在您接下去的表明式中:

JavaScript

2+2//回车,再 $_+1//回车得5

1
2
2+2//回车,再
$_+1//回车得5

图片 20

上面的$_须求精晓其奥义技巧接纳非凡,而$0~$4则意味着了近年5个你挑选过的DOM节点。
如何看头?在页面右击选拔审查元素,然后在弹出来的DOM结点树上边随便点选,这一个被点过的节点会被记录下来,而$0会再次回到近些日子一回点选的DOM结点,就那样推算,$1再次回到的是精品次点选的DOM节点,最多保留了5个,借使远远不足5个,则赶回undefined
图片 21

另外值得一赞的是,Chrome 调控台北原生协助类jQuery的选用器,也正是说你能够用$增加熟练的css选用器来抉择DOM节点,多么滴熟悉。

JavaScript

$('body')

1
$('body')

图片 22

$(selector)重回的是满意采取条件的第三个DOM成分。
剥去她伪善的伪装,其实$(selector)是原生JavaScript document.querySelector() 的封装。
再者另三个发令$$(selector)重回的是怀有满意接纳条件的成分的叁个聚焦,是对document.querySelectorAll() 的封装。

JavaScript

$$('div')

1
$$('div')

图片 23

当您想总结某段代码推行了稍稍次时也无需自个儿去写相关逻辑,内置的console.count可以很地胜任那样的任务.

REFERENCE

  • Styled console logging in the Chrome DevTools (Canary)
  • Chrome Console API
  • Chrome Console Command Line API

    1 赞 9 收藏 1 评论

[图片上传中。。。(12)]

Chrome 调节台不完全指南

2015/01/10 · JavaScript · 1 评论 · Chrome

本文小编: 伯乐在线 - 刘哇勇 。未经作者许可,禁绝转发!
应接参预伯乐在线 专辑作者。

Chrome的开垦者工具已经强盛到没朋友的程度了,非常是其功效充分分界面友好的console,使用异常能够犹如下效率:

  • 越来越高「逼格」更快「开采调试」越来越强「晋级级的Frontender」
  • Bug无处遁形「Console大法好」

monitor(function),它接受三个函数名作为参数,比方function a,每趟a被试行了,都会在决定台出口一条消息,里面含有了函数的名称a及实践时所盛传的参数。而unmonitor(function)正是用来终止这一监听。

只顾:他不感到然附于任何全局变量举例window,所以其实在JS代码里是访谈不了这些copy方法的,所以从代码层面来调用复制功用也就无从聊起。但愿有天浏览器会提供相应的JS实现啊~那样大家就能够透过js代码实行复制操作而不用再重视Flash插件了。

Chrome 调整台不完全指南 – 刘哇勇

图片 24

图片 25

console.clear

2+2//回车,再
$_+1//回车得5

debug同样也是收到三个函数名作为参数。当该函数推行时自动断下来以供调节和测验,类似于在该函数的入口处打了个断点,能够透过debugger来做到,同一时间也得以由此在Chrome开辟者工具里找到相应源码然后手动打断点。而undebug 则是革除该断点。而别的还应该有比很多命令则令人并没有说的欲念,因为众多都得以透过Chrome开辟者工具的UI分界面来操作并且比用在调整台输入要有辅助。

当您想代码满意某个条件时才输出音讯到调节台,那么您不需求写if也许伊利表明式来达成目标,cosole.assert便是那样境况下一种很好的工具,它会先对传播的表明式实行预见,唯有表明式为假时才输出相应消息到调控台。

将所相称的节点放在贰个数组里重临

当想要查看CPU使用有关的音讯时,能够利用console.profile配合console.profileEnd来成功那几个须要。
那10%效能够通过UI分界面来实现,Chrome 开荒者工具里面有个tab便是Profile。使用办法和console.time基本同样,其实time开荒者工具里也可能有个tab正是timeline。关于console.prefile博主就不做多余的牵线了。想要做越多询问的读者能够看这里。

console.time("Array耗时");
var array= new Array(10000000);
for (var i = array.length - 1; i >= 0; i--) {
array[i] = new Object();
};
console.timeEnd("Array耗时");

[图片上传中。。。(15)]

若果您是一人开辟者,笔者想console.log分明是经常使用的了,我们首要看看console.log的多少个弟兄:

var tfboy={name:'wayou',gender:'unknown',hobby:'opposite to the gender'};
keys(tfboy);
values(tfboy);

4.console.warn ('警报音信')

function sayHello(name){
alert('hello,'+name);
}
monitor(sayHello);
sayHello('damonare');
sayHello('tjz');
unmonitor(sayHello);

console.log家族

图片 26

这是一对死党。后面一个再次回到传入对象具有属性名组成的数目,前者重返全数属性值组成的数组。具体请看下边包车型地铁例子:

这么的支配台消息看上去就一览无遗了,就无须再为了找那是属于那一行代码输出的再翻贰回源码了。

图片 27

怎么看头呢?在页面右击接纳调查成分,然后在弹出来的DOM结点树上边随意点选,这么些被点过的节点会被记录下来,而$0会回到近来一回点选的DOM结点,就那样类推,$1重回的是精品次点选的DOM节点,最多保留了5个,如若非常不够5个,则再次回到undefined。

局部时候后端传回到一大串数据,是或不是以为直接console.log或是通过抓包工具查看都会令人晕头转向呢,这年正事console.table发挥作用的时候了,以表格的格局展现数据,自然如数家珍。

讲真,米国技士们着实很欣赏money啊(什么人又不是吧),看看PHP就清楚了,满屏的$。而在Chrome的调控台里,$用处一样是蛮多且方便的。

monitor & unmonitor

3.console.error ('错误消息')

var isDebug=false;
console.assert(isDebug,'开垦中的log消息。。。');

console.assert

var data = {code:200,content:[{'品名': '杜雷斯', '数量': 4}, {'品名': '冈本', '数量': 3}]};
console.table(data.content);

前言

console.clear();清空气调节器控台,那么些相应和console.log名气同样高啊。

别的,console.log家族还给大家提供了三个的API:第贰个参数能够带一些格式化指令,例如%c,n;看上边那一个光彩夺目的意义:

先简介一下chrome的调控台,张开chrome浏览器,按f12就足以轻易的张开控制台

参考

$

console.group("app.bundle");
console.log("来自bundle模块的音信1");console.log("来自bundle模块的音讯2");
console.groupEnd();

$x("//p")相称全体的p节点,$x("//p[a]");相称全数子节点包涵a的p节点

剥去她伪善的外衣,其实$(selector)是原生JavaScript document.querySelector() 的包装。
何况另八个命令$$(selector)重临的是富有知足选取标准的成分的二个会见,是对document.querySelectorAll() 的包裹。

下一场你就能够Ctrl+v了。

本来,图片也是足以的,读者能够自动尝试,修改上述代码就可以。

望着这种“黑法力”是否有种坑分的感到到吗,其实还不只有哦!console.table能够让大家输出表格,示例:

2.console.info ('提醒性新闻')

上面的$_内需理解其奥义工夫使用方便,而$0~$4则代表了不久前5个你选拔过的DOM节点。

console.group("app.bundle");
console.warn("来自bundle模块的警戒新闻1");console.warn("来自bundle模块的告诫消息2");
console.groupEnd();

Console API文档;

假定再同盟console.group 与console.groupEnd,能够将这种分类管理的思辨发挥到极致。那切合于在付出一个局面不小模块非常多很复杂的Web APP时,将分其他log音信分组到以各自命名空间为名称的组里面。

$x(path)

debug & undebug

[图形上传中。。。(16)]

图片 28

图片 29

$('body');
$$('div');

console.time & console.timeEnd

console.log('%chello world', 'background-image:-webkit-gradient( linear, left top, right top, color-stop(0, #f22), color-stop(0.15, #f2f), color-stop(0.3, #22f), color-stop(0.45, #2ff), color-stop(0.6, #2f2),color-stop(0.75, #2f2), color-stop(0.9, #ff2), color-stop(1, #f22) );color:transparent;-webkit-background-clip: text;font-size:5em;');

图片 30

别的,console.log() 接收不定参数,参数间用逗号分隔,最后会输出会将它们以空白字符连接。

console.table

图片 31

1.console.log ('普通消息')

keys & values

$x("//p");
$x("//p[a]");

图片 32

console.count

Commond API;

将DOM结点以JavaScript对象的格局出口到调整台,而console.log是直接将该DOM结点以DOM树的组织实行输出,与在要素考察时看见的布局是同样的。分歧的变现格局,一样的雅致,各个体位任君选拔反正正是利于与关切。

console.dir

除此而外标准输出的场景,还会有布满的景色是计数。

本文由美高梅官方网站59599发布于前端科技,转载请注明出处:未经小编许可,只是使用简易的console.log()

关键词: