如今我们在web运用中会用到许多的库和框架,它们中的大部分是经过残缺的测试并且相对而言可以被假定成是没有bug的。但是debugger还是会步入一切这些与调试义务没有关系的文件。处置的办法是把你不需求调试的脚本放进黑盒里,这外头也可以包括一些你本人写的脚本代码。你可以在这篇调试黑盒的 文章 中阅读到更多的细节。
https://raygun.com/blog/javascript-debugging-with-black-box/
10. 在复杂的调试中找到重要的事情在更多复杂的调试情境中,我们有时会想要输入许多行。在这里,我们可以应用各种console函数来使输入使输入的内容保持一个更易读的结构。比如,console.log,console.debug,console.warn,console.info,console.error等等。你可以在inspector中挑选它们。有时分这能够不是你在调试时想要到达的效果,但假设需求,你可以使你输入的信息愈加多样性并有本人的作风。当你想调试JavaScript时,你可以运用CSS来创立你本人的格式化控制台信息:
console.todo = function(msg) {
console.log(‘ % c % s % s % s‘, ‘color: yellow; background - color: black;’, ‘–‘, msg, ‘–‘);
}
console.important = function(msg) {
console.log(‘ % c % s % s % s’, ‘color: brown; font - weight: bold; text - decoration: underline;’, ‘–‘, msg, ‘–‘);
}
console.todo(“This is something that’ s need to be fixed”);
console.important(‘This is an important message’);
它将会输入:
在console.log()中,你可以运用%s来代表string,%i来代表integers,%c来代表自定义作风。你能够可以找到其他更好的办法来运用这些作风。假设你运用单页运用框架(single page framework),你或许想要message对应一种作风,model对应一种作风,collections对应一种作风,而controller对应另一种作风,等等。
11. 查看特定的函数调用和参数在Chrome的控制台中,你可以查看一些特定的函数。每次这些函数被调用时,传入函数的参数就会被输入。
var func1 = function(x, y, z) {
//....
};
它会输入:
这是一个查看传入函数参数的好办法。最理想的状况下,控制台可以辨别出函数需求多少个参数,但实践上并不能。在上述的例子中,func1需求三个参数,但只传入了两个。假设在代码中没有做益处置,这样会招致潜在的bug。
12. 快速在控制台中拜访元素一个在控制台中更快地完成选择器查询(querySelector)的办法是运用. ('css-selector')会前往第一个婚配,.$$('css-selector')会前往一切的婚配。假设你运用一个元素多于一次,那么可以把它存为一个变量。
13. Postman是十分好的工具许多开发者运用Postman去配合Ajax央求的运用。Postman特别得棒,但令人懊恼的是,每翻开一个新的阅读器窗口,就需求写一个新的央求对象,然后再测试它。
有时分用阅读器愈加复杂。当你这么做时,假设是一个密码安全页面(password-secure page),你不再需求为认证cookie担忧。
在Firefox编辑和重新发送央求,你只需求翻开Insepctor,到Network标签页下,右键点击你想要修正的央求然后编辑,再重新发送。
如今你可以更改任何你想要的东西,更改header,编辑参数,然后点击重新发送。
下面我展现了一个有着两种不同属性的央求:
14. 在节点上设置断点DOM可以是一件特别幽默的事情。有时分有些东西改动了,你却不知道为什么。但是,当你需求调试JavaScript时,你可以经过Chrome使一个DOM元素中止改动。你甚至可以看见它的属性。在Chrome的Inspector中,右键点击那个元素并选择一个设置断点的条件:
15. 运用页面提速效劳(page speed service)有许多效劳和工具可以协助你审查页面的JavaScript,找出那些运转迟紧张有成绩的中央。其中的一个工具是 Raygun Real User Monitoring 。除了协助找到JavaScript成绩(如外部脚本加载缓慢,不必要的CSS,过大的图片),这个工具还在其他方面也十分有协助。它还可以帮你找到一些有意间招致加载时间过长,或许脚本无法正常执行的JavaScript成绩。
你还可以用它来测量JavaScript代码的功用提高,并跟踪变化。
16. 多运用断点最后,合理正确地运用断点可以协助你成功调试。尝试在不同的场景下用不同的方式运用断点。
(责任编辑:admin)