Chrome DevTools 第一篇:简介 & Console

Chrome DevTools

Chrome 开发者工具是一套 Web 开发者工具,直接内置于 Google Chrome 浏览器中。 开发者工具可以帮助您即时修改页面和快速诊断问题,最终帮助您更快地构建更好的网站。

一、开启 DevTools

  • 右上角菜单 > 更多工具 > 开发者工具

  • 页面元素 > 右键 > 检查元素

  • 快捷键

    推荐 Ctrl + Shift + C 单手操作

    系统 元素 控制台 上一个面板
    Windows 或 Linux Ctrl + Shift + C Ctrl + Shift + J F12 或 Ctrl + Shift + I
    Mac Ctrl + Shift + C Ctrl + Shift + J Fn + F12 或 Ctrl + Shift + I

二、功能说明

DevTools 具有不同的面板,分别对应不同的功能

  • 查看和更改 DOM
  • 查看和更改 CSS
  • 调试 JavaScript
  • 在控制台中查看消息并运行 JavaScript
  • 优化网站速度
  • 检查网络活动

三、快捷键

  1. 切换 DevTools 位置布局 (靠右 / 靠下)

    ctrl + shift + d

  2. 调起 command

    ctrl + shift + p 调起 command 菜单

四、面板介绍

(一)控制台面板 console

console 面板的主要功能为两个:

  1. 查看记录或错误消息
  2. 运行JavaScript

1. console 中的 $
a. document.querySelector

$0 : 当前选中元素的引用

$1 : 上次引用的元素

$2 : 上上次引用的元素 (直到 $4 )

b. 结果引用

$_ : 上次执行结果的引用

c. $i 引用 npm 插件

配合 chrome 插件 console-importer 来在 console 中引入 npm 进行调试

$i('lodash')


2. 异步

Console 面板中 默认是异步环境,可以理解为是被 async 包裹的函数内。可以直接调用 await 调试异步方法。

js 复制代码
const res = await request('https://xxx.xx.xxx');

3. 函数/事件 监听
  1. monitor

    监听函数调用

  2. monitorEvents

    监听事件调用


4. Console API

下面介绍一些常用的,感兴趣可以去官网了解下所有的API

控制台API参考文档

a. console.log / warn / error
  • log 有一个注意点,就是它打印的对象,是以其引用保存的, 这就导致我们打印的对象总是最终修改后的结果。 可以使用 JSON.stringify 进行一个镜像记录。

  • enhanced object literal 增强对象字面意义,特别是同时打印多个的情况下更显方便

    js 复制代码
        // 通常我们打印一个对象,字符串一般这么用的会比较多
        console.log('name', name);
        // 使用 enhanced object literal 的方式
        console.log({ name });
  • warnerror 分别是不同级别的消息内容。我们可以在控制台进行过滤和区分。

b. console.table

用来打印一个对象或者数组,使其可以以一个表格的样式展示出来。结合 enhanced object literal 有不错的效果

js 复制代码
console.table({ name });
c. console.assert

expression 的求值结果为 false 时,将错误写入控制台。

js 复制代码
const x = 5;
const y = 3;
const reason = 'x is expected to be less than y';
console.assert(x < y, {x, y, reason});
d. console.time([label]) 、 console.timeEnd([label])

启动一个新计时器。调用 console.timeEnd([label]) 以停止计时器并将已用时间输出到 控制台。

ini 复制代码
console.time();
for (var i = 0; i < 100000; i++) {
  let square = i ** 2;
}
console.timeEnd();
e. console.count()

写入 count() 在同一行以相同的 label。调用 console.countReset([label]) 以重置计数。

javascript 复制代码
console.count();
console.count('coffee');
console.count();
console.count();

五、通用方法

1. copy

全局的 copy 方法可以在 console 里复制任何内容,同时也可以配合变量更方便的操作。

2. Store as global

选中元素 右键 存储为全局变量

3. 保存堆栈信息

当我们控制台报错需要和其他人协作沟通时,除了截图还可以保存错误栈信息,减少沟通成本。

4. 保留日志

在页面有重定向或者跳转的时候,默认不会保留上个页面的日志信息,当我们有需要查看的时候可以勾选保留日志选项

5. 条件断点

利用条件断点,每次需执行判断表达式的特点,在条件判断处添加 console 命令进行调试。

下列操作需要进入command shift + Ctrl + p

6. 截屏

进入 command ,输入 screen 选择 Capture full size screenshot 获取整个网页的完整截图,包括视口外的部分。

7. 切换主题

进入 command ,输入 theme 可选切换 明 / 暗 主题

8. 代码块

路径:source 面板 -> snippets 可以保存代码块进行调用。

在 command 中调用

参考文档

  1. developer.chrome.google.cn/docs/devtoo...
  2. gitee.com/hongjilin/h...
相关推荐
于慨6 小时前
Lambda 表达式、方法引用(Method Reference)语法
java·前端·servlet
石小石Orz6 小时前
油猴脚本实现生产环境加载本地qiankun子应用
前端·架构
从前慢丶6 小时前
前端交互规范(Web 端)
前端
CHU7290356 小时前
便捷约玩,沉浸推理:线上剧本杀APP功能版块设计详解
前端·小程序
GISer_Jing6 小时前
Page-agent MCP结构
前端·人工智能
王霸天6 小时前
💥别再抄网上的Scale缩放代码了!50行源码教你写一个永不翻车的大屏适配
前端·vue.js·数据可视化
小领航6 小时前
用 Three.js + Vue 3 打造炫酷的 3D 行政地图可视化组件
前端·github
@大迁世界6 小时前
2026年React大洗牌:React Hooks 将迎来重大升级
前端·javascript·react.js·前端框架·ecmascript
PieroPc6 小时前
一个功能强大的 Web 端标签设计和打印工具,支持服务器端直接打印到局域网打印机。Fastapi + html
前端·html·fastapi
悟空瞎说6 小时前
深入 Vue3 响应式:为什么有的要加.value,有的不用?从设计到源码彻底讲透
前端·vue.js