知识管理 知识管理
首页
  • 前端文章

    • JavaScript
    • HTML
    • CSS
  • 学习笔记

    • 《JavaScript教程》
    • 《JavaScript高级程序设计》
    • 《ES6 教程》
    • 《Vue》
    • 《React》
    • 《TypeScript 从零实现 axios》
    • TypeScript
    • JS设计模式总结
  • 技术文档

    • Git使用手册
    • Markdown使用教程
    • npm常用命令
    • npm packageJson属性详解
    • yaml语言教程
  • 前端面试

    • 前端面试手册
  • 计算机基础

    • 数据库
    • 操作系统
    • 计算机网络
    • Linux
  • Java

    • Java基础
  • 数据结构与算法

    • 数据结构
  • 编程标准

    • 设计模式
    • 代码规范
  • 学习笔记

    • AI学习笔记
  • 推荐系统

    • 机器学习基础
    • 基础推荐算法
    • 深度推荐模型
    • 推荐系统竞赛实践
    • 新闻推荐系统实战
    • 推荐系统面经
  • 计算机视觉

    • 三维重建
关于
收藏
友链
  • 分类
  • 标签
  • 归档
GitHub (opens new window)

Francis

人一定要想象西西弗斯的快乐,因为向着高处挣扎本身足以填满一个人的心灵。
首页
  • 前端文章

    • JavaScript
    • HTML
    • CSS
  • 学习笔记

    • 《JavaScript教程》
    • 《JavaScript高级程序设计》
    • 《ES6 教程》
    • 《Vue》
    • 《React》
    • 《TypeScript 从零实现 axios》
    • TypeScript
    • JS设计模式总结
  • 技术文档

    • Git使用手册
    • Markdown使用教程
    • npm常用命令
    • npm packageJson属性详解
    • yaml语言教程
  • 前端面试

    • 前端面试手册
  • 计算机基础

    • 数据库
    • 操作系统
    • 计算机网络
    • Linux
  • Java

    • Java基础
  • 数据结构与算法

    • 数据结构
  • 编程标准

    • 设计模式
    • 代码规范
  • 学习笔记

    • AI学习笔记
  • 推荐系统

    • 机器学习基础
    • 基础推荐算法
    • 深度推荐模型
    • 推荐系统竞赛实践
    • 新闻推荐系统实战
    • 推荐系统面经
  • 计算机视觉

    • 三维重建
关于
收藏
友链
  • 分类
  • 标签
  • 归档
GitHub (opens new window)
  • JS 基础知识点及常考面试题(一)
  • JS 基础知识点及常考面试题(二)
  • ES6 知识点及常考面试题
  • JS 异步编程及常考面试题
  • 手写 Promise
  • Event Loop
  • JS 进阶知识点及常考面试题
  • JS 思考题
  • DevTools Tips
    • Elements
      • Element 状态
      • 快速定位 Element
      • DOM 断点
      • 查看事件
      • 找到之前查看过的 DOM 元素
    • Debugging
    • 小结
  • 浏览器基础知识点及常考面试题
  • 浏览器缓存机制
  • 浏览器渲染原理
  • 安全防范知识点
  • 从 V8 中看 JS 性能优化
  • 性能优化琐碎事
  • Webpack 性能优化
  • 实现小型打包工具
  • React 和 Vue 两大框架之间的相爱相杀
  • Vue 常考基础知识点
  • Vue 常考进阶知识点
  • React 常考基础知识点
  • React 常考进阶知识点
  • 监控
  • UDP
  • TCP
  • HTTP 及 TLS
  • HTTP/2 及 HTTP/3
  • 输入 URL 到页面渲染的整个流程
  • 设计模式
  • 常见数据结构
  • 常考算法题解析
  • CSS 常考面试题资料
  • 如何写好一封简历
  • 面试常用技巧
  • 拓展学习
  • 前端面试手册
IdealDestructor
2021-02-27

DevTools Tips

# DevTools Tips

这一章节的内容可能和面试没有太大关系,但是如果你能很好地使用 DevTools 的话,它能够很好地帮助你提高生产力和解决问题的能力。在这一章节中,我不会去介绍大家经常使用的功能,重点在于让大家学习到一些使用 DevTools 的技巧。

# Elements

这个功能肯定是大家经常用到的,我们可以通过它来可视化所有的 DOM 标签,可以查看任何 DOM 的属性,接下来我们就来学习一下关于这方面的 Tips。

# Element 状态

你可能会在开发中遇到这么一个场景:给一个 a 标签设置了多种状态下的样式,但是如果手动去改变状态的话就有点麻烦,这时候这个 Tips 就能帮你解决这个问题。

可以从上图中看到,无论你想看到元素的何种状态下的样式,都只需要勾选相对应的状态就可以了,这是不是比手动更改方便多了?

# 快速定位 Element

通常页面都是可以滚动的,那么如果想查看的元素不在当前窗口的话,你还需要滚动页面才能找到元素,这时候这个 Tips 就能帮你解决这个问题。

当点击这个选项的时候,页面就会自动滚动到元素所在的位置,这样比边滚动边查看是否找到元素的方式方便多了。

# DOM 断点

给 JS 打断点想必各位都听过,但是 DOM 断点知道的人应该就少了。如果你想查看一个 DOM 元素是如何通过 JS 更改的,你就可以使用这个功能。

当我们给 ul 添加该断点以后,一旦 ul 子元素发生了改动,比如说增加了子元素的个数,那么就会自动跳转到对应的 JS 代码

其实不光可以给 DOM 打断点,我们还可以给 Ajax 或者 Event Listener 打断点。

# 查看事件

我们还可以通过 DevTools 来查看页面中添加了多少的事件。假如当你发现页面滚动起来有性能上的问题时,就可以查看一下有多少 scroll 事件被添加了

# 找到之前查看过的 DOM 元素

不知道你是否遇到过这样的问题,找不到之前查看过的 DOM 元素在哪里了,需要一个个去找这就有点麻烦了,这时候你就可以使用这个功能。

我们可以通过 $0 来找到上一次查看过的 DOM 元素,$1 就是上上次的元素,之后以此类推。这时候你可能会说,打印出来元素有啥用,在具体什么位置还要去找啊,不用急,马上我就可以解决这个问题

当你点击这个选项时,页面立马会跳转至元素所在位置,并且 DevTools 也会变到 Elements 标签。

# Debugging

给 JS 打断点想必大家都会,但是打断点也是有一个不为人知的 Tips 的。

for (let index = 0; index < 10; index++) {
  // 各种逻辑
  console.log(index)
}
1
2
3
4

对于这段代码来说,如果我只想看到 index 为 5 时相应的断点信息,但是一旦打了断点,就会每次循环都会停下来,很浪费时间,那么通过这个小技巧我们就可以圆满解决这个问题

首先我们先右键断点,然后选择 Edit breakpoint... 选项

在弹框内输入 index === 5,这样断点就会变为橙色,并且只有当符合表达式的情况时断点才会被执行

# 小结

虽然这一章的内容并不多,但是涉及到的几个场景都是日常经常会碰到的,希望这一章节的内容会对大家有帮助。如果大家对于这个章节的内容存在疑问,欢迎在评论区与我互动。

编辑 (opens new window)
上次更新: 2021/09/12, 15:26:27
JS 思考题
浏览器基础知识点及常考面试题

← JS 思考题 浏览器基础知识点及常考面试题→

最近更新
01
前端基础及Vue实战
01-04
02
flask简介及基础
01-04
03
前后端交互
01-04
更多文章>
Theme by Vdoing | Copyright © 2022-2022 Francis | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
×