js调节和测试方法,JavaScript在浏览器上的调度技巧

JavaScript在浏览器上的调治才具

2016/11/04 · JavaScript
· 8 评论 ·
调试

正文作者: 伯乐在线 –
TGCode
。未经作者许可,禁止转发!
招待参与伯乐在线 专辑小编。

在网址开辟中,我们难免会境遇各个bug,那时,大家就要求去调度我们的JavaScript脚本找寻题目,然后去修改代码。那大家什么样去调解呢?

最轻便易行的正是alert()形式,但是,alert 弹出窗口会中断程序,
而且假如要在循环中展现音讯,就会弹出多少个弹窗,你不点击alert框的分明按键下贰个alert就不会产出,其余alert
呈现对象恒久展现为[object ],所以alert()方法只适合小程序。

其次种是断点调节和测试

一.在源码上应用debugger

例如:

JavaScript

function check(){ var i=0; debugger; alert(1); } check();

1
2
3
4
5
6
function check(){
var i=0;
debugger;
alert(1);
}
check();

美高梅开户网址 1

能够看来,程序会运作到debugger处就会停住,并不曾举办前面,你能够按F八来继续实行。

2.
直接在浏览器上断点,同样是开荒调控台的source,找到您要调治的代码,然后点击你要断点的那一行代码的左侧行码处,如下图:

美高梅开户网址 2

其二种正是本身最喜爱的console

最常用的正是console.log(),在调节西安打字与印刷新闻,它能够承受任何字符串、数字和JavaScript对象,也足以接受换行符n以及制表符t。

JavaScript

var i=0; var name=”我是console”; var json={ “key”:”console” };
console.log(i); console.log(name); console.log(json);

1
2
3
4
5
6
7
8
var i=0;
var name="我是console";
var json={
"key":"console"
};
console.log(i);
console.log(name);
console.log(json);

美高梅开户网址 3

您能够按红箭头所指的按键清除调整台,也得以一贯用console.clear()清除。

理所当然console可不止那一个艺术,它还有:

console.info 用于出口提醒性新闻

console.error用于出口错误新闻

console.warn用于出口警示新闻

console.debug用于出口调节和测试音讯

console.info(“提醒”); console.error(“报错了”); console.warn(“警告”);
console.debug(“调节和测试消息”);

美高梅开户网址 4

console对象的下面三种办法,都得以动用printf风格的占位符。可是,占位符的品种相比较少,只帮助字符(%s)、整数(%d或%i)、浮点数(%f)和目的(%o)八种。

JavaScript

console.log(“%s年”,2016); console.log(“%d年%d月”,2016,6);
console.log(“%f”,3.1415); console.log(“%o”,json);

1
2
3
4
console.log("%s年",2016);
console.log("%d年%d月",2016,6);
console.log("%f",3.1415);
console.log("%o",json);

美高梅开户网址 5

若果你认为上面包车型客车出口音信太干燥了,大家还足以那样:

JavaScript

console.log(“%c自定义样式”,”font-size:20px;color:green”);
console.log(“%c作者是%c自定义样式”,”font-size:20px;color:green”,”font-weight:bold;color:red”);

1
2
console.log("%c自定义样式","font-size:20px;color:green");
console.log("%c我是%c自定义样式","font-size:20px;color:green","font-weight:bold;color:red");

美高梅开户网址 6

console.dirxml用来体现网页的某部节点(node)所涵盖的html/xml代码

<table> <thead> <tr> <th></th>
<th></th> <th></th> <th></th>
<th></th> </tr> </thead> </table>
<script> var table=document.querySelector(“table”);
console.dirxml(table); </script>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<table>
<thead>
<tr>
<th></th>
<th></th>
<th></th>
<th></th>
<th></th>
</tr>
</thead>
</table>
<script>
var table=document.querySelector("table");
console.dirxml(table);
</script>

美高梅开户网址 7

console.group输出1组音信的早先

console.groupEnd甘休一组输出新闻

JavaScript

console.group(“start”); console.log(“子项”); console.groupEnd(“end”);
console.log(“aa”);

1
2
3
4
console.group("start");
console.log("子项");
console.groupEnd("end");
console.log("aa");

美高梅开户网址 8

console.assert对输入的表达式进行预见,唯有表明式为false时,才输出相应的新闻到调控台

JavaScript

var isTrue=true; console.assert(isTrue,”小编是漏洞百出”); isTrue=false;
console.assert(isTrue,”作者是似是而非二”);

1
2
3
4
var isTrue=true;
console.assert(isTrue,"我是错误");
isTrue=false;
console.assert(isTrue,"我是错误2");

美高梅开户网址 9

console.count  当你想总计代码被施行的次数,这些法子很有用

JavaScript

function play(){ console.count(“实行次数:”); } play(); play(); play();

1
2
3
4
5
6
function play(){
     console.count("执行次数:");
}
play();
play();
play();

美高梅开户网址 10

console.dir
 直接将该DOM结点以DOM树的结构进行输出,能够详细核对象的不二法门发展等等

<table> <thead> <tr> <th></th>
<th></th> <th></th> <th></th>
<th></th> </tr> </thead> </table> var
table=document.querySelector(“table”); console.dir(table);

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<table>
<thead>
<tr>
<th></th>
<th></th>
<th></th>
<th></th>
<th></th>
</tr>
</thead>
</table>
 
var table=document.querySelector("table");
console.dir(table);

console.time 计时开首

console.timeEnd 计时甘休

JavaScript

console.time(“array”); var a=0; for(var i=0;i<100000;i++){ a += i; }
console.timeEnd(“array”);

1
2
3
4
5
6
console.time("array");
var a=0;
for(var i=0;i<100000;i++){
a += i;
}
console.timeEnd("array");

美高梅开户网址 11

console.profile和console.profileEnd合作协同使用来查看CPU使用相关音讯

console.timeLine和console.timeLineEnd合营共同记录壹段时间轴

打赏补助小编写出越多好文章,多谢!

打赏小编

在网站开辟中,大家难免会遭逢各类bug,那时,大家就供给去调治大家的JavaScript脚本找寻难点,然后去修改代码。那我们怎样去调解呢?

Chrome 控制台console的用法

2015/01/12 · js调节和测试方法,JavaScript在浏览器上的调度技巧。JavaScript
· Chrome

初稿出处:
ctriphire   

世家都有用过各连串型的浏览器,每种浏览器都有温馨的性状,本身拙见,在本身用过的浏览器在那之中,小编是最欣赏Chrome的,因为它对于调节和测试脚本及前端设计调试都有它比别的浏览器有过之而无比不上的地点。恐怕我们对console.log会有自然的摸底,心里难免会想调节和测试的时候用alert不就行了,干嘛还要用console.log这么一长串的字符串来代替alert输出消息吗,上边小编就介绍一些调节和测试的入门本事,让你爱上console.log

先的粗略介绍一下chrome的调控台,张开chrome浏览器,按f12就能够轻巧的开采调节台

美高梅开户网址 12

世家能够看到调整台里面有一首诗还有任何音信,假如想清变频空调控台,能够点击左上角那么些美高梅开户网址 13来清空,当然也能够由此在支配台输入console.clear()来兑现清中央空调整台音信。如下图所示

美高梅开户网址 14

今后一旦二个景象,假诺二个数组里面有广大的要素,不过你想清楚各种成分具体的值,那时候想想假如你用alert那将是多惨的一件业务,因为alert阻断线程运行,你不点击alert框的规定开关下三个alert就不会见世。

上面我们用console.log来替换,感受一下它的魔力。

美高梅开户网址 15

看了下面那张图,是还是不是认知到log的有力之处了,上边大家来探望console里面具体提供了怎么方法能够供我们一直调节和测试时选择。

美高梅开户网址 16

目前调整台方法和性质有:

JavaScript

["$$", "$x", "dir", "dirxml",
"keys", "values", "profile",
"profileEnd", "monitorEvents",
"unmonitorEvents", "inspect", "copy",
"clear", "getEventListeners", "undebug",
"monitor", "unmonitor", "table",
"$0", "$1", "$2", "$3",
"$4", "$_"]

1
[&quot;$$&quot;, &quot;$x&quot;, &quot;dir&quot;, &quot;dirxml&quot;, &quot;keys&quot;, &quot;values&quot;, &quot;profile&quot;, &quot;profileEnd&quot;, &quot;monitorEvents&quot;, &quot;unmonitorEvents&quot;, &quot;inspect&quot;, &quot;copy&quot;, &quot;clear&quot;, &quot;getEventListeners&quot;, &quot;undebug&quot;, &quot;monitor&quot;, &quot;unmonitor&quot;, &quot;table&quot;, &quot;$0&quot;, &quot;$1&quot;, &quot;$2&quot;, &quot;$3&quot;, &quot;$4&quot;, &quot;$_&quot;]

上边大家来家家户户介绍一下各种艺术主要的用处。

一般意况下我们用来输入消息的措施首如果用到如下八个

1、console.log 用于出口普通消息

2、console.info 用以出口提醒性音讯

3、console.error用来出口错误信息

4、console.warn用来出口警示音信

5、console.debug用于出口调试音讯

用图来讲话

美高梅开户网址 17

console对象的上边八种办法,都足以利用printf风格的占位符。但是,占位符的类型比较少,只帮助字符(%s)、整数(%d或%i)、浮点数(%f)和目的(%o)三种

JavaScript

console.log(“%d年%d月%d日”,2011,三,二陆);
console.log(“圆周率是%f”,三.141592陆);

1
2
console.log("%d年%d月%d日",2011,3,26);
console.log("圆周率是%f",3.1415926);

美高梅开户网址 18

%o占位符,能够用来查看二个目的内部境况

JavaScript

var dog = {}; dog.name = “大毛”; dog.color = “黄色”; console.log(“%o”,
dog);

1
2
3
4
var dog = {};
dog.name = "大毛";
dog.color = "黄色";
console.log("%o", dog);

美高梅开户网址 19

6、console.dirxml用来呈现网页的有些节点(node)所富含的html/xml代码**

JavaScript

<body> <table id=”mytable”> <tr>
<td>A</td> <td>A</td> <td>A</td>
</tr> <tr> <td>bbb</td> <td>aaa</td>
<td>ccc</td> </tr> <tr> <td>111</td>
<td>333</td> <td>222</td> </tr>
</table> </body> <script type=”text/javascript”>
window.onload = function () { var mytable =
document.getElementById(‘mytable’); console.dirxml(mytable); }
</script>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<body>
    <table id="mytable">
        <tr>
            <td>A</td>
            <td>A</td>
            <td>A</td>
        </tr>
        <tr>
            <td>bbb</td>
            <td>aaa</td>
            <td>ccc</td>
        </tr>
        <tr>
            <td>111</td>
            <td>333</td>
            <td>222</td>
        </tr>
    </table>
</body>
<script type="text/javascript">
    window.onload = function () {
        var mytable = document.getElementById(‘mytable’);
        console.dirxml(mytable);
    }
</script>

美高梅开户网址 20

7、console.group出口1组消息的发端

8、console.groupEnd告竣1组输出新闻

看您必要选拔不相同的输出方法来行使,假若上述七个主意再同盟group和groupEnd方法来一块行使就能够输入丰富多彩的差别式样的出口新闻。

美高梅开户网址 21

哈哈,是或不是以为很奇妙啊!

9、console.assert对输入的表明式举行预见,唯有表明式为false时,才输出相应的新闻到调节台

美高梅开户网址 22

10、console.count(这些点子10分实用哦)当你想总括代码被施行的次数

美高梅开户网址 23

11、console.dir(这一个法子是自家时常应用的 可不知道比for
in方便了有点) 直接将该DOM结点以DOM树的布局举办输出,可以详细核对象的方式提升级等

美高梅开户网址 24

12、console.time 计时开端

13、console.timeEnd  计时截至(看了上面包车型大巴图你弹指间就感受到它的厉害了)

美高梅开户网址 25

14、console.profileconsole.profileEnd合作协同利用来查看CPU使用相关消息

美高梅开户网址 26

在Profiles面板里面查看就能够知见cpu相关应用消息

美高梅开户网址 27

15、console.timeLineconsole.timeLineEnd协作协同记录壹段时间轴

16、console.trace  货仓追踪相关的调整

上述方法只是自家个人了然罢了。借使想查看具体API,能够上合法看看,具体地址为:

 

下边介绍一下调控台的一对火速键

1、方向键盘的上下键,大家壹用就知道。比如用上键就相当于选用上次在调控台的输入符号

2、$_命令归来近期2回表明式实践的结果,成效跟按升高的方向键再回车是一致的

美高梅开户网址 28

上面的$_内需驾驭其奥义能力采用方便,而$0~$四则代表了近年四个你选取过的DOM节点。

怎么意思?在页面右击选用审查元素,然后在弹出来的DOM结点树上面随便点选,那个被点过的节点会被记录下来,而$0会回来近来三回点选的DOM结点,就那样推算,$一再次回到的是最棒次点选的DOM节点,最多保留了4个,假设不够四个,则赶回undefined

美高梅开户网址 29

三、Chrome
调控杜阿拉原生帮衬类jQuery的选取器
,也等于说你能够用$加上掌握的css选取器来摘取DOM节点

美高梅开户网址 30

4、copy经过此命令能够将要调整台获取到的剧情复制到剪贴板

美高梅开户网址 31

(哈哈 刚刚从调控台复制的body里面包车型地铁html能够轻巧粘贴到哪 举个例子记事本
 是否以为成效很强劲)

5、keys和values 前者重临传入对象具有属性名组成的数据,后者再次回到全体属性值组成的数组

美高梅开户网址 32

聊到那,不免想起console.table方法了

美高梅开户网址 33

 

 

三遍偶然的机遇,打开百度的时候按下了F1二,然后就见调控台里面输出了百度的招聘广告,以为挺帅气的,再然后就有了那篇博文。

打赏扶助我写出更加多好小说,多谢!

任选1种支付办法

美高梅开户网址 34
美高梅开户网址 35

2 赞 9 收藏 8
评论

最简便的正是alert()方法,不过,alert 弹出窗口会中断程序,
而且假设要在循环中突显新闻,就会弹出八个弹窗,你不点击alert框的规定开关下三个alert就不会出现,其余alert
展现对象长久展现为[object ],所以alert()方法只适合小程序。

6、monitor & unmonitor

monitor(function),它接受贰个函数名作为参数,举例function a,每次a被施行了,都会在支配台出口一条新闻,里面含有了函数的称呼a及进行时所传颂的参数。

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

美高梅开户网址 36

看了那张图,应该精晓了,也正是说在monitor和unmonitor中间的代码,试行的时候会在调整台出口一条新闻,里面包蕴了函数的称呼a及试行时所传诵的参数。当免除监视(也等于施行unmonitor时)就不再在支配台出口新闻了。

JavaScript

$ // 轻易明了便是 document.querySelector 而已。 $$ // 轻松掌握就是document.querySelectorAll 而已。 $_ // 是上3个表明式的值 $0-$四 //
是方今多少个Elements面板选中的DOM成分,待会会讲。 dir // 其实便是console.dir keys // 取对象的键名, 重临键名组成的数组 values //
去对象的值, 重返值组成的数组

1
2
3
4
5
6
7
$ // 简单理解就是 document.querySelector 而已。
$$ // 简单理解就是 document.querySelectorAll 而已。
$_ // 是上一个表达式的值
$0-$4 // 是最近5个Elements面板选中的DOM元素,待会会讲。
dir // 其实就是 console.dir
keys // 取对象的键名, 返回键名组成的数组
values // 去对象的值, 返回值组成的数组

 

上面看一下console.log的一些才能

1、重写console.log 改动输出文字的体制

美高梅开户网址 37

2、利用调整台出口图片

美高梅开户网址 38

三、钦点输出文字的样式

美高梅开户网址 39

最后说一下chrome调控台二个简单的操作,怎么着查看页面成分,看下图就知道了

美高梅开户网址 40

你在调控台轻便操作3次就知晓了,是否以为很简短!

赞 6 收藏
评论

美高梅开户网址 41

既是能够如此在调节台出口音讯,那之后再调节和测试Js的时候不就能够节约诸多辛劳了呗!幸免不误人子弟,特意利用for(var
i in console)查看了下各样浏览器调控台对console的支撑,

关于小编:TGCode

美高梅开户网址 42

路途虽远,无所畏
个人主页 ·
作者的小说 ·
9 ·
   

美高梅开户网址 43

其次种是断点调节和测试

结果如下:

在源码上选取debugger

IE 11 控制台

例如:

log , info , warn , error , debug , assert , time , timeEnd , group ,
groupCollapsed , groupEnd , trace , clear , dir , dirxml , count ,
countReset , cd , select , profile , profileEnd

function check(){

Firebug 控制台

var i=0;

log , debug , info , warn , exception , assert , dir , dirxml , trace ,
group , groupCollapsed , groupEnd , profile , profileEnd , count , clear
, time , timeEnd , timeStamp , table , error

debugger;

Chrome 控制台

alert(1);

memory , _commandLineAPI , debug , error , info , log , warn , dir ,
dirxml , table , trace , assert , count , markTimeline , profile ,
profileEnd , time , timeEnd , timeStamp , timeline , timelineEnd , group
, groupCollapsed , groupEnd , clear

}

能够看出,以上我测试的浏览器对 log , info , warn , error , debug
多少个为主情势都以永葆的,注意,笔者使用的是 IE 1一,其余版本作者没测试,而
Firefox 本人也是不带调控台的,要求加载Firebug
插件并且运维它,本事console,不然便是Js报错了。为了选拔起来更有利,可以和睦包裹一下,推断一下浏览器对
console 的支撑,不帮衬就不得不接纳原来的 alert 大概其余措施了。

check();

简轻巧单用法:

能够看来,程序会运维到debugger处就会停住,并从未实行前边,你能够按F八来继续奉行。

console.log(“日志音信”);
console.info(“一般音讯”);
console.debug(“调节和测试音信”);
console.warn(“警告提醒”);
console.error(“错误提示”);

2.
一直在浏览器上断点,同样是打开调整台的source,找到您要调解的代码,然后点击你要断点的那壹行代码的右侧行码处

格式化输出:

其两种便是自家最喜悦的console。

console.log(“%d年%d月%d日”, 201四, 5, 20);//日期格式输出
console.log(‘%c有颜色的出口新闻’, ‘color:white;
background-color:#005伍CC’);//格式输出

最常用的正是console.log(),在调整纽伦堡打字与印刷新闻,它能够承受任何字符串、数字和JavaScript对象,也得以接受换行符n以及制表符t。

出口变量:

var i=0;

var who= ‘you’;
console.log(‘输出变量 We support  ‘, you);//读取变量

var name=”我是console”;

出口数组:

var json={

var arr = [1, 2, 3, 4, 5];
console.log(‘数组:’, arr);//输出数组

“key”:”console”

上述那篇利用Js的console对象,在调节台打印调式消息测试Js的实现正是小编分享给我们的全体内容了,希望能给大家1个参考,也愿意大家多多扶助脚本之家。

};

你大概感兴趣的作品:

  • js调节和测试连串调节台命令行API使用方法
  • js调整台出口的章程(详解)
  • AngularJS
    怎么着在调控台实行不当调节和测试
  • 浅谈Sublime Text
    3运行JavaScript控制台
  • js调节和测试种类 初识调控台
  • 剥夺JavaScript调节台调节和测试的办法
  • 应用浏览器的Javascript调控台调节和测试PHP程序
  • 怎么着使Chrome调控台协理多行js方式——意外开采
  • 简述JS调控台的选拔

console.log(i);

console.log(name);

console.log(json);

您能够按红箭头所指的按键清除调节台,也足以一直用console.clear()清除。

本来console可不止那叁个办法,它还有:

console.info 用于出口提醒性新闻

console.error用于出口错误音讯

console.warn用于出口警示新闻

console.debug用于出口调节和测试消息

console.info(“提示”); console.error(“报错了”); console.warn(“警告”);
console.debug(“调节和测试音信”);

console对象的方面三种办法,都得以应用printf风格的占位符。不过,占位符的品类相比少,只支持字符(%s)、整数(%d或%i)、浮点数(%f)和对象(%o)三种。

console.log(“%s年”,2016);

console.log(“%d年%d月”,2016,6);

console.log(“%f”,3.1415);

console.log(“%o”,json);

万壹你感到上边的输出新闻太干燥了,大家还足以这么:

console.log(“%c自定义样式”,”font-size:20px;color:green”);

console.log(“%c笔者是%c自定义样式”,”font-size:20px;color:green”,”font-weight:bold;color:red”);

console.dirxml用来体现网页的某部节点(node)所蕴藏的html/xml代码

var table=document.querySelector(“table”);

console.dirxml(table);

console.group输出1组消息的初叶

console.groupEnd截止1组输出新闻

console.group(“start”);

console.log(“子项”);

console.groupEnd(“end”);

console.log(“aa”);

console.assert对输入的表达式实行预知,唯有表明式为false时,才输出相应的音讯到调整台

var isTrue=true;

console.assert(isTrue,”小编是百无一是”);

isTrue=false;

console.assert(isTrue,”小编是错误二”);

console.count  当你想总计代码被施行的次数,这么些措施很有用

function play(){

    console.count(“实行次数:”);

}

play();

play();

play();

console.dir
 直接将该DOM结点以DOM树的布局进行输出,可以详细核查象的法子升高级等

var table=document.querySelector(“table”);

美高梅开户网址 ,console.dir(table);

console.time 计时初阶

console.timeEnd 计时甘休

console.time(“array”);

var a=0;

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

a += i;

}

console.timeEnd(“array”);

console.profile和console.profileEnd合营协同使用来查看CPU使用有关新闻

console.timeLine和console.timeLineEnd同盟共同记录1段时间轴

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图