Chrome浏览器JavaScript使用指南
Chrome浏览器是谷歌开发的一款免费网页浏览器,因其强大的功能和快速的浏览速度而受到广泛欢迎,对于前端开发者来说,Chrome不仅是一款优秀的浏览器,还提供了功能强大的开发者工具,用于调试和优化网页代码,本文将详细介绍如何在Chrome浏览器中运行和调试JavaScript代码,包括设置断点、使用Snippets编写代码片段等技巧。
一、打开开发者工具
在Chrome中打开一个页面后,可以通过以下几种方式打开开发者工具:
1、右键“检查”:在页面中单击鼠标右键,然后选择“检查”,即可打开开发者工具。
2、快捷键F12:直接按下F12键可以快速打开开发者工具。
3、菜单进入:依次点击右上角菜单栏中的“更多工具”->“开发者工具”,也可以通过另一组快捷键(Ctrl + Shift + I)来开启。
二、Console窗口执行JavaScript代码
打开开发者工具后,可以在Console窗口中输入JavaScript代码进行调试,以下是两个实例:
console.log("公众号:村雨遥");
window.alert("公众号:村雨遥");
三、创建和使用Snippets脚本
除了在Console窗口中执行JavaScript脚本外,还可以在Chrome中创建一个脚本文件,然后再执行,具体步骤如下:
1、切换到Sources菜单:在开发者工具中切换到Sources菜单,然后选择其中的Snippets选项卡。
2、新建脚本文件:点击下方的 + New snippet 来新建一个脚本文件。
3、编写并执行代码:在右侧的框中编写JavaScript代码,完成后点击Ctrl + Enter即可执行。
window.alert("公众号:村雨遥"); console.log("公众号:村雨遥");
4、右键操作:在创建的Snippet脚本上单击鼠标右键,可以进行以下操作:
Run:运行脚本。
Rename:重命名脚本。
Remove:删除脚本。
Save as:将脚本导出。
四、设置断点和调试JavaScript代码
1. 设置断点
有两种方法可以给代码添加断点:
在Source内容区设置:找到要调试的文件,然后在内容源代码左侧的代码标记行处点击,即可打上一个断点,刷新浏览器,当页面代码运行到断点处便会暂停执行。
在js文件中设置:在js源文件中需要执行断点操作的代码前加上debugger
,刷新浏览器,当页面代码运行到断点处会暂停执行。
2. 设置断点执行条件
右键点击设置的断点,选择Edit breakpoint…,输入执行断点的条件表达式,当表达式为true时断点调试才会生效,有了条件断点,我们在调试代码的时候能够更加精确地控制代码断点的时机。
五、Call Stack调用栈和Scope Variables作用域变量
当断点执行到某一程序块处停下来后,右侧调试区的Call Stack会显示当前断点所处的方法调用栈,从上到下由最新调用处依次往下排列,Call Stack列表的下方是Scope Variables列表,可以查看此时局部变量和全局变量的值,调试时当前调用在哪里,Call Stack列表里的箭头便会指向哪里,同时当我们点击调用栈列表上的任意一处,便会调到相应的位置,方便我们再回头去看看代码,如果想重新从某个调用方法处执行,可以右键选择Restart Frame,断点就会跳到此处开头重新执行,同时Scope中的变量值也会依据代码重新更改,这样就可以方便地回退来重新调试,省得我们再重新刷新整个页面。
六、DOM元素设置断点
除了可以给js代码设置断点外,还可以给DOM元素设置断点,因为我们有时候需要监听和查看某个元素的变化、赋值情况,但是又不太关心哪一段代码对它做的修改,只想看看它的变化情况,那么可以给它来个监听事件,右键点击需要监听的DOM节点,选择“Break On…”菜单项,在出现的三个选择项中任选一个便会添加断点,这三个选择项分别对应如下三种修改情况:
subtree modifications:子节点修改
attribute modifications:自身属性修改
node removal:自身节点被删除
设置好断点后,当DOM元素要被修改时,代码就会在自动停留在修改处。
七、统一管理所有断点
我们可能会在不同的文件、不同的位置添加许多断点,这些都会显示在Source页面里的Breakpoints、DOM Breakpoints区域中:
Breakpoints:js断点
DOM Breakpoints:DOM元素断点
点击断点前面的复选框可以暂时“去掉/加上”该断点,点击断点可跳转到相应的程序代码处。
八、快捷键和格式化工具
快速定位文件:使用快捷键Ctrl + P。
快速定位文件中成员函数:使用快捷键Ctrl + Shift + O。
js代码格式化:为了减小体积,有时候我们发现一些js源码都是压缩之后的代码,我们可以点击下面的{}大括号按钮将代码转成可读格式。
格式化返回的JSON数据:有时我们调试程序时需要查看服务端返回的数据内容,在Network选项卡中就可看到,但如果后台返回的是没有格式化的JSON数据,查看起来会异常痛苦,我们可以利用chrome控制台的copy接口来实现JSON数据的格式化,首先请求项的右键菜单中选择Copy Response拷贝响应内容,然后在命令行中先输入copy(),然后将拷贝的数据粘贴到括号中回车即可,copy接口便会自动将数据进行格式化,并保存到剪贴板中,我们将其粘贴到文本编辑器中就可以看到效果了。
九、使用Snippets编写代码片段
在Sources页面下的Snippets栏目中,我们可以随时进行JS代码的编写,运行结果会打印到控制台,代码是全局保存的,我们在任何页面,包括新建标签页,都可以查看或运行这些代码,我们不再需要为了运行一小段JS代码而新建一个HTML页面了,Snippets的方便之处在于,我们只需要打开Chrome就可以编写一份任意页面都可以运行的JS代码了点击“New Snippet”按钮,创建一个新的片段文件;在代码区域输入js代码;按下“Ctrl + Enter”或者点击右下方的按钮执行代码,可以看到代码执行成功且反应到当前页面上了。
十、Async调试模式
Chrome调试器的Async模式是为调试异步函数所设计的一个功能,下面是一段使用Promise的代码示例:
//做饭 function cook(){ console.log('开始做饭。'); var p = new Promise(function(resolve, reject){ //做一些异步操作 setTimeout(function(){ console.log('做饭完毕!'); resolve('鸡蛋炒饭'); }, 1000); }); return p; } //吃饭 function eat(data){ console.log('开始吃饭:' + data); var p = new Promise(function(resolve, reject){ //做一些异步操作 setTimeout(function(){ console.log('吃饭完毕!'); resolve('用过的碗和筷子'); }, 2000); }); return p; } cook() .then(eat) .then(function(data){ console.log(data); });
这段代码演示了如何使用Promise进行异步操作,并通过Async模式进行调试,通过这种方式,我们可以更好地理解和控制异步代码的执行流程。
各位小伙伴们,我刚刚为大家分享了有关“chrome浏览器js”的知识,希望对你们有所帮助。如果您还有其他相关问题需要解决,欢迎随时提出哦!
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/1487232.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复