前端_调试工具_Chrome Devtools

news2024/11/24 17:50:19

目录

一、上左侧菜单功能

1.选择功能

2.手机/电脑 显示切换功能

3.内存

4.元素

5.控制台

6.源代码/来源

7.网络

8.应用

9.性能

10.安全

11.Lighthouse

12.记录器

13.性能数据分析

二、上右侧菜单功能

1.警告

2.设置

3....更多功能


谷歌浏览器自带了调试工具Chrome Devtools,专为开发者设计,用于帮助他们对网站进行调试和分析。其功能涵盖了从查看和修改网页元素,到深入的性能分析和网络通信追踪。

首先将项目运行起来,使用谷歌浏览器打开项目。然后打开调试工具,有下面四种方法:

        ①点击F12

        ②鼠标右键->检查

        ③左键点击浏览器右上角三个点->更多工具->开发者工具

        ④快捷键,ctrl+shit+i

打开后显示如下:

位置选择:

 

如果是新手那么暂时只需要用到:

一、1.选择功能

一、2.手机/电脑 显示切换功能

一、4.元素

一、5.控制台

一、7.网络

二、3...更多功能

下面我们分区介绍一下所有功能:

一、上左侧菜单功能

上左侧共有13个按钮下面依次介绍一下:

1.选择功能

当我们点击这个按钮后,点击页面中我们想查看元素的地方,调试工具就会跳转到元素功能,显示出当前选择区域的元素。

项目网页选择(我以百度项目网页为例):

调试工具显示:

2.手机/电脑 显示切换功能

在做项目时,有时是webPC端,有时是web移动端,这时就需要使用这个切换功能。

默认是电脑端项目:

如果是移动端项目,我们点击按钮:

此时项目网页显示:

3.内存

清空数据按钮:

  1. 堆快照: 堆快照工具可以捕获网页的内存快照,并提供详细的内存信息和统计数据。通过分析堆快照,开发人员可以了解对象的内存占用情况、对象之间的引用关系以及潜在的内存泄漏问题。开发人员可以使用快照对比功能,比较不同时间点的快照,以便追踪内存变化和检测内存泄漏。

  2. 内存分配(Allocation)面板: 内存分配面板提供了对网页内存分配情况的实时监测和分析。开发人员可以查看每个 JavaScript 对象的内存使用量,并按照构造函数或原型进行分组。这样可以快速找到内存占用较高的对象,并识别潜在的内存问题。

  3. 时间轴上的分配插桩: 内存时间轴工具可以显示网页在时间轴上的内存使用情况。开发人员可以通过查看内存时间轴,找出内存使用量过高的时间段,并分析导致内存增长的原因。这有助于定位内存泄漏和优化内存使用的关键代码片段。

  4. 内存分析技巧:

  • 关注对象生命周期:注意对象的创建和销毁过程,确保不会产生无用的对象引用,从而减少内存占用。
  • 避免循环引用:当对象之间存在循环引用时,会导致内存泄漏。及时清除不再使用的引用,以避免这种情况的发生。
  • 优化大对象:大对象占用过多的内存资源。优化大对象的创建和使用方式,可以减少内存占用和提升性能。
  • 使用缓存和释放资源:对于一些需要频繁创建和销毁的资源,可以使用缓存来避免重复创建,同时在不需要时及时释放资源。

通过结合使用上述内存分析工具和技巧,开发人员可以更好地定位和解决内存问题,提升网页的性能和响应速度。同时,内存优化也有助于减少功耗和提高设备的电池寿命。

4.元素

显示当前页面元素,可以和按钮1配合使用,显示想找到的元素。

5.控制台

可以使用代码在控制台输出一些内容,方便调试。

let name = "孙悟空"
console.log("name",name)

此时控制台输出:name孙悟空

6.源代码/来源

当控制台显示哪部分代码报错,我们点击代码提示,就会跳到源代码,可以定位报错位置,方便我们查找错误。

7.网络

发送的请求,都是在这里查看,还可以自己设置网速。

点击任意一个请求后:

8.应用

9.性能

点击录制,进行性能分析:

分析报告:

10.安全

HTTPS为您的网站提供关键安全和数据完整以及用户的隐私数据信息。使用Chrome DevTools中的Security(安全)面板可以调试安全隐患,并确保您已在网站上正确实施HTTPS。

11.Lighthouse

Lighthouse 用于分析网络应用和网页,收集现代性能指标并提供对开发人员最佳实践的意见。为 Lighthouse 提供一个需要审查的网址,它将针对此页面运行一连串的测试,然后生成一个有关页面性能的报告。


①导航模式(默认)    

用处:获取性能分数和所有性能指标。评估渐进式 Web 应用功能。在页面加载后立即分析可访问性。    

局限性:无法分析表单提交或单页应用转换。无法分析在页面加载时无法立即提供的内容。

②时间跨度模式    

用处:测量某个时间范围内的布局偏移和 JavaScript 执行时间,包括交互。发现性能机会,以改善长期存在的页面和 SPA 的体验。    

局限性:不提供总体性能分数。无法分析基于时刻的性能指标(如:最大内容绘制)。无法分析页面状态问题(如:没有无障碍功能类别)

③快照模式    

用处:分析当前状态的页面。查找 SPA 或复杂表单深处的可访问性问题。评估隐藏在交互后面的菜单和 UI 元素的最佳实践。    不

局限性:提供总体性能分数或指标。无法分析当前 DOM 之外的任何问题(如:没有网络、主线程或性能分析)。

报告:

12.记录器

实现 录制、重播和分享 你在浏览器触发的行为

  • 记录用户在浏览器中的操作,包括点击、输入、滚动等。
  • 生成可交互的回放脚本,可以在 DevTools 中回放。
  • 支持多种回放速度,方便开发者快速定位问题。
  • 可以导出记录的数据,以便于分享和存档。

13.性能数据分析

二、上右侧菜单功能

1.警告

当前页面有警告就会显示在这里

2.设置

可以自行设置偏好或快捷键等。

3....更多功能

如图所示可以设置调试工具网页位置或者其他内容。

以上就是本文内容,大致讲解了一下谷歌调试,不够细致,后期会针对主要功能出一篇文章详细讲解。

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

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

相关文章

AE电源pinnacle软件新款老款二款软件

AE电源pinnacle软件新款老款二款软件

数据中心运维管理方案

数据中心运维管理方案 随着数据中心在现代信息社会中的重要性日益增加,高效、可靠的运维管理方案成为保障其稳定运行的关键。本文将探讨数据中心运维管理的策略和实践,旨在为运维团队提供全面、系统的管理方法,确保数据中心在任何情况下都能…

(文章复现)低温环境下考虑电池寿命的微电网优化调度

参考文献: [1]丁佳昀,胡秦然,吴在军,等.低温环境下考虑电池寿命的微电网优化调度[J].中国电机工程学报,2024,44(10):3815-3824. 1.摘要 储能系统作为微电网重要组成部分,为微电网协调能量供需提供了解决方案。然而,在低温环境下&#xff0c…

抽象类接口(超详细)

抽象类&接口(超详细) 一:抽象类和抽象方法 封装:对象代表什么,就得封装对应的数据,并提供数据对应的行为 如果老师的work是教书,学生的work是学习。以前我们是在父类里面写一个work随便写一个方法体,然后子类重写。但是有一个弊端,如果子类不是你写的,是别人写…

嵌入式仪器模块:波形发生器模块(嵌入式)

• 16 位分辨率 • 125 MHz 刷新率 • 支持生成 FSK/ASK 信号 应用场景 • 生成任意标准波形或用户自定义波形 • 在特殊协议通信中模拟某个波形 • 无线充电(信号调制) 道114输出阻抗Low-ZLow-ZLow-Z输出范围 5 V 5 V 6 V耦合DCDCDC带宽4 MHz10 M…

第一个SpringBoot项目

目录 💭1、新建New Project IDEA2023版本创建Sping项目只能勾选17和21,却无法使用Java8?🌟 2、下载JDK 17🌟 💭2、项目创建成功界面 1、目录 🌟 2、pom文件🌟 💭3、…

C#操作MySQL从入门到精通(20)——更新数据

前言: 谈到数据库,大家最容易脱口而出的就是增删改查,本文所说的更新数据就是增删改查的改,改变数据的意思。 本文测试使用的数据库如下: 1、更新一列 所谓更新一列的意思就是只更改一列数据,并且通常要使用where条件,因为不加这个条件的话会导致将所有行的数据进行…

LeetCode:环形链表II

文章收录于LeetCode专栏 LeetCode地址 环形链表II 题目 给定一个链表,返回链表开始入环的第一个节点。如果链表无环,则返回null。   为了表示给定链表中的环,我们使用整数pos来表示链表尾连接到链表中的位置(索引从0开始&#…

vue3中进度条上加高亮圆点

实现效果 小圆点基于进度条定位&#xff08;left&#xff09;。 实现代码 <template><!-- 这块代码实现的功能&#xff1a;progressData遍历的年份进度数组&#xff0c;展示每年完成的进度--><ul><li v-for"(item, index) in progressData" :k…

LabVIEW 反向工程的实现与法律地位

什么是LabVIEW反向工程&#xff1f; 反向工程是指从现有的应用程序或软件中推导出其设计、架构、代码等信息的过程。对于LabVIEW而言&#xff0c;反向工程涉及从现有的VI&#xff08;虚拟仪器&#xff09;文件、项目或应用程序中提取出设计思路、功能模块、算法实现等。 LabV…

轻松上手MYSQL:SQL优化之Explain详解

​​&#x1f308; 个人主页&#xff1a;danci_ &#x1f525; 系列专栏&#xff1a;《设计模式》《MYSQL应用》 &#x1f4aa;&#x1f3fb; 制定明确可量化的目标&#xff0c;坚持默默的做事。 文章目录 一、Explain1.1 explain作用1.2 explain列说明idselect_typetableparti…

Linux|如何安装 Java

引言 Java是最受欢迎的编程语言之一&#xff0c;JVM&#xff08;Java的虚拟机&#xff09;是运行Java应用程序的运行时环境。这两个平台是许多流行软件所需的&#xff0c;包括Tomcat&#xff0c;Jetty&#xff0c;Cassandra&#xff0c;Glassfish和Jenkins。 本教程[1]将指导您…

关闭Cloudflare Pages的访问策略

curl API 获取相应的 uid curl -X GET "https://api.cloudflare.com/client/v4/accounts/账户标识符/access/apps" \-H "X-Auth-Email: 邮箱" \-H "X-Auth-Key: Global API KEY" \-H "Content-Type: application/json"账户标识符是登…

C# WPF入门学习主线篇(十九)—— 布局管理实战『混合布局案例』

C# WPF入门学习主线篇&#xff08;十九&#xff09;—— 布局管理实战『混合布局案例』 欢迎来到C# WPF入门学习系列的第十九篇。在前几篇文章中&#xff0c;我们详细介绍了各个布局容器的基本概念和使用方法。本篇博客将通过一个综合的实战案例&#xff0c;展示如何在WPF中使用…

Python第二语言(五、Python文件相关操作)

目录 1. 文件编码的概念 2. 文件的读取操作 2.1 什么是文件 2.2 open()打开函数 2.3 mode常用的三种基础访问模式 2.4 文件操作及案例 3. 文件的写入操作及刷新文件&#xff1a;write与flush 4. 文件的追加操作 5. 文件操作的综合案例&#xff08;文件备份操作&#x…

【SQLAlChemy】常见的数据类型有哪些,Column可选的参数有哪些呢?

常见数据类型与Column参数 常见类型 Integer&#xff1a;整数类型&#xff0c;对应数据库的 int 类型。Float&#xff1a;浮点数类型&#xff0c;对应数据库的 float 类型。它占用 32 位空间。Double&#xff1a;双精度浮点数类型&#xff0c;对应数据库的 double 类型&#…

AI演进之道:剖析大模型技术的四大核心架构

▼最近直播超级多&#xff0c;预约保你有收获 随着 AI 大模型技术的持续进步&#xff0c;大模型的技术框架经历了不断优化与革新。本文我们将细致解析四种关键的大模型技术结构&#xff1a;纯粹 Pompt 提示词法、Agent Function Calling 机制、RAG&#xff08;检索增强生成&am…

Java物业管理系统+数据库应用程序开发[JavaSE+JDBC+idea控制台+MySQL]

背景&#xff1a; 使用JavaSEJDBCMySQL技术实现一个物业管理系统&#xff0c;具体要求如下 物业管理系统需求&#xff1a; 需求分析 1.1用户需求分析 在进入系统之前&#xff0c;要进行身份确认&#xff0c;只有用户名和用户密码都相符的用户方可进入本系统&#xff0c;为…

基于Java的超市进销存管理系统

开头语&#xff1a; 你好呀&#xff0c;我是计算机学长猫哥&#xff01;如果有相关需求&#xff0c;文末可以找到我的联系方式。 开发语言&#xff1a; Java 数据库&#xff1a; MySQL 技术&#xff1a; Java JSP Servlet JavaBean 工具&#xff1a; IDEA/Eclipse、…