VSCode 的 Logpoints 功能可在不中断程序运行的前提下记录变量值或执行日志。通过右键添加、命令面板插入、悬停编辑及右键禁用/删除等方式,支持动态调试与日志观测。

如果您在调试 JavaScript 或 TypeScript 代码时希望观察变量值或执行流程,但又不希望中断程序运行节奏,则 VSCode 的 Logpoints 功能可实现仅记录日志而不暂停执行。以下是启用和使用 Logpoints 的具体方式:
本文运行环境:MacBook Air,macOS Sequoia。
一、在源码行添加 Logpoint
Logpoint 是断点的一种变体,它不会触发暂停,而是在命中时将自定义表达式输出到调试控制台。该功能依赖于 VSCode 内置的调试器(如 Node.js 或 Chrome 调试扩展)支持。
1、在编辑器左侧行号区域右键单击目标代码行。
2、在弹出菜单中选择 Add Log Point...。
3、在出现的输入框中键入要输出的内容,支持纯文本(如 "Entering loop")或 JavaScript 表达式(如 `user.id: ${user.id}, name: ${user.name}`)。
4、按 Enter 确认,该行左侧将显示一个带加号图标的橙色菱形标记。
二、通过命令面板插入 Logpoint
当鼠标未定位在可设点行时,可通过全局命令快速插入 Logpoint,适用于批量添加或键盘优先工作流。
1、按下 Cmd+Shift+P(macOS)或 Ctrl+Shift+P(Windows/Linux)打开命令面板。
2、输入并选择 Debug: Toggle Log Point。
3、在弹出的编辑框中输入日志模板,支持插值语法与表达式求值。
4、确认后,Logpoint 将自动添加至当前光标所在行。
三、编辑已有 Logpoint
已添加的 Logpoint 可随时修改其输出内容,无需删除重建,便于调试过程中动态调整观测信息。
1、将鼠标悬停在橙色 Logpoint 标记上。
2、点击出现的铅笔图标,或直接按 F2 键进入编辑模式。
3、修改日志字符串或表达式,例如将 `count: ${count}` 改为 `count: ${count}, timestamp: ${Date.now()}`。
4、按 Enter 保存更改。
四、禁用或删除 Logpoint
Logpoint 可独立于断点进行启停管理,便于临时关闭日志输出而不丢失配置。
1、右键单击 Logpoint 标记,在菜单中选择 Disable Breakpoint 以临时禁用。
2、再次右键选择 Delete Breakpoint 可彻底移除。
3、也可通过断点视图(Run and Debug 侧边栏 → BREAKPOINTS 部分)对所有 Logpoint 进行集中管理。










