asp js单步调试_如何使用Chrome的控制台高效的调试Javascript代码?

引言

在我们的日常开发中我们常常会遇到JavaScript的调试问题,而我们解决问题的传统解决方案就是使用大量的console.log或者console对象的其他方法,这会给我们带来很多不便,特别是遇到复杂问题的时候,可能会出现大量的console.log,当排查出问题之后我们又不得不在回头清除掉这些调试信息,这样大大降低了我们的工作效率。所以,我们有必要寻找更好的方案来解决JavaScript的调试问题,无疑,Chrome的调试工具Chrome DevTools给我们带来了调试的遍历,下面我们一步步来学习一遍在DevTools中调试的基本工作流程!

第一步:明确我们需要调试的位置

我们通过一节简单的案例来模拟一下,本案例来源于官网的调试Demo,其中index.html代码如下

118450dad2ff5eee0e3b0fd093d2bfc7.png

然后是index.js

8093348c1b240451945eb1ae24fb7746.png

代码的本意是要做一个简单的加法,但是我们运行看下结果:

3006479aab05adfcd07ff887888e556b.png

显然执行结果是错误的,结果应该是33,我们假设这就是我们在开发中遇到的问题

第二步:打开Chrome的调试面板

  • Command+Option+I (Mac) 或 Control+Shift+I(Windows、Linux)或者F12
d020df9c3be10e6b8143c574617d8ab5.png
  • 点击Source标签,Source有三块面板
46e10f1547dbf6de9862ad26a5d58bd9.png

从左依次是

  1. File Navigator 窗格。 此处列出页面请求的每个文件。
  2. Code Editor 窗格。 在 File Navigator 窗格中选择文件后,此处会显示该文件的内容。
  3. JavaScript Debugging 窗格。 检查页面 JavaScript 的各种工具。 如果 DevTools 窗口布局较宽,此窗格会显示在 Code Editor 窗格右侧。
  • 使用断点暂停代码
9e7815d3823e3ed7e6e2d2fc91221df6.png

通常我们会在这写console.log,打完断点我们在填入两个数字提交

d9ab9ff1ce0a31da2040754aa025fc08.png

我们的代码在断点处暂停了,很直观的能看到我们需要看的变量值,简单来说就是断点可以快速方便的查看你想看的值,有时候我想单步调试代码,直接F10就行了,想进入到函数中按F11,我们调试到这和我们猜想的一样,由于是字符串那么+号就意味着连接,也就造成了错误的结果。

  • 使用控制台直接求值

我认为这是最值得赞一波的功能,因为我们可以直接在控制台输入变量或者表达式或者执行一个函数,我们打开console标签,输入以下内容,前提是我们在之前那个地方打了断点

a53b2f932b3df4583b45bb88ab17b6e3.png

我们可以执行我们需要执行的函数和表达式,然后也正确的看到了结果,知道的人可能觉得没什么,但是不知道的人可能觉得这个功能非常Nice,或者你可以直接修改代码保存后在执行,同样知道了结果,而不必再到编辑器修改,调试正确后直接复制过去即可

5f7dfc2430531c8b7d91136885886540.png

总结

本文就是想通过简单的案例介绍来改变下我们传统的js调试方式,目的就是为了提升工作效率,当然也有很多其它方式调试javascript,比如WebStorm,VSCode安装Debug for Chrome,只是我觉得这种方式最直接,同时也最简单,虽然是小技巧,但是也得知道不是,希望对大家能够有所帮助!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/272074.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

安卓App的启动过程、安卓布局分类及布局和页面的关系

Android App 启动流程: 当你想要启动一个app时,首先得点击该app桌面图标。那点击图标时到底发生了什么呢?先看个理论知识 .Launcher: launcher其实就是一个app,从功能上说,是对手机上其他app的一个管理和启动,从代码…

Linux文件默认权限和umask笔记

关于Linux文件默认权限的问题,可以实际先尝试一下如下命令:root用户登录[rootlocalhost test]# touch file1[rootlocalhost test]# ls-l file1-rw-r--r-- 1 root root 0 May 5 08:28 file1 #输出结果 对应的数字权限 644[rootlocalhost test]# touch fi…

Android相对布局(RelativeLayout)常用属性、练习使用按键、文本框等控件、线性布局(LinearLayout)属性

RelativeLayout中子控件常用属性: 子控件默认是从父控件的左上角开始排列的 相对于父控件 android:layout_alignParentTop"true" 和父控件的顶部对齐android:layout_alignParentBottom"true" 和父控件的底部对齐android:layout_alignPar…

Seata AT模式

基本思路 先决条件 支持本地ACID事务的关系数据库。通过JDBC访问数据库的Java应用程序。 整体机制 从两个阶段提交协议的演变: 阶段1:在同一本地事务中提交业务数据和回滚日志,然后释放本地锁和连接资源。阶段2: 对于提交情况…

自媒体各大平台收益对比_哪些自媒体平台没有新手期,适合小白撸收益?

2-26把我设置为星标,不错过每一次的干货~各大自媒体平台的新手期总是让小白们望而却步,特别是百家号审核非常严格,如果没思路、没人指导,过新手有难度。不过,还是有很多平台对新手宝宝很友好,没…

Linux关于文件的权限笔记

1、调整文件的权限命令:chmodLinux的每个文件都定义了文件的拥有者:u(user)、拥有组:g(group)、其他人:o(others)权限,对应的权限用rwx的组合来定义。使用chmod命令&…

启动rrt什么意思_python学习第144课--创建虚拟机、设置虚拟机参数以及启动虚拟机...

【每天几分钟,从零入门python编程的世界!】上节我们介绍了下载虚拟机以及centOS的相关事项,现在我们创建虚拟机。●创建虚拟机安装好virtualbox之后,我们点击Oracle VM VirtualBox打开管理器,界面如下图:你…

Android按键响应的几种方式、安卓页面的跳转、页面跳转传参、页面自动跳转、Activity(页面)的生命周期

按键响应的第一种方式: 在XML文件里面设置按键的onClick绑定函数。就像下面的代码,给Button设置onClick属性,在按键被按下的时候,会调用java文件里面的onClickbtton1这个函数,因为现已将它和这个按钮进行了绑定。利用…

pycharm体验

查看python版本 退出 exit()

Linux文本检索命令grep笔记

grep是在linux系统中基于行文本非常实用检索工具,通过该命令可以将匹配到的结果信息输出到终端控制台。语法格式:grep [-ivnc] 需要匹配的内容 文件名常用参数说明:-i 检索的时候不区分大小写-c 检索到的匹配行数-n 检索到的匹配行显式具体的…

成立出版社的条件_创始人亲述:法国鸿飞文化出版社的诞生故事和做书心得

鸿飞文化出版社2007年在法国创立,专门出版由中国作家和法国插画师共同创作的图画书。创始人叶俊良引用苏东坡的诗句“人生到处知何似,应似飞鸿踏雪泥。泥上偶然留指爪,鸿飞那复计东西。”为出版社取名,希望通过这些“印迹”为读者…

python单行注释和多行注释

# 后面加一个空格,下面就不会有波浪线了 点击小灯泡下的第一行,可以调整注释格式 多行注释

Linux文件查询笔记

1、数据库查找命令:locateLinux也可以通过locate命令查找文件,locate命令主要是依据一个数据库文件来执行文件的查找,默认情况下Linux每天会默认检索系统中的所有文件,然后把检索的文件信息记录到数据库文件中。因为运行locate命令…

柱坐标系下的ns方程_麦克斯韦方程组小结

一、▽ 算子、点积、叉积l▽ 算子叫“del”算子&#xff0c;即<< span"">∂/∂x,∂/∂y,∂/∂z>,可以理解为一个符号向量&#xff0c;向量里的元素是偏微分运算符号&#xff0c;没有任何具体意义&#xff0c;只是一个表示方法。ln维向量的内积定义如下&a…

Linux进程终止命令kill或killall​笔记

在linux命令下&#xff0c;如果需要终止某个进程&#xff0c;可以使用kill或者killall等命令来实现。终止命令的原理都是向linux内核发送一个系统操作的信号以及某个进程的ID&#xff0c;然后系统内核会根据指定的进程ID进行相应的处理。kill命令典型的用法&#xff1a;首先使用…

Visual Studio的调试技巧

Visual Studio的调试技巧 【原文地址】 Debugging Tips with Visual Studio 2010 【原文发表日期】 2010/8/19 10:48 AM 这是我写的关于VS2010和.Net4发布的博客系列的第26篇。 今天的博文包含了一些有用的能用于VS的调试技巧。 我的朋友 Scott Cate&#xff08;他写了很多很…

Linux排序命令sort笔记

很多时候Linux需要对文本相对比较规范的文本数据进行排序&#xff0c;这时候可以使用Linux系统下的sort命令进行处理。语法格式&#xff1a;sort [-ntkr] filename常用参数&#xff1a;-n 根据数字进行排序-t 指定的分隔符-k 指定分隔符的第几列-r 降序排序用法示例&#xff1a…

redirect路由配置 vue_Web前端:Vue路由进阶配置

大家好&#xff0c;我来了&#xff0c;本期为大家带来的前端开发知识是”Web前端&#xff1a;Vue路由进阶配置“&#xff0c;有兴趣做前端的朋友&#xff0c;和我一起来看看吧&#xff01;1. 页面打开权限流程页面是否能打开有以下两点判断&#xff1a;1. 判断是否增加登陆的判…