WebStorm 2025.2 Help

在 Chrome 中调试 JavaScript

WebStorm 提供用于调试 客户端 JavaScript 代码的内置调试器。

下方的视频和说明将引导您完成使用此调试器的基本步骤。

开始之前

  1. 请确保设置中启用了捆绑插件 JavaScript Debugger。 按 Ctrl+Alt+S 打开设置,然后选择 插件。 单击 已安装 选项卡。 在搜索字段中输入 JavaScript Debugger。 有关插件的更多信息,请参阅 管理插件

  2. 按照 配置 JavaScript 调试器 中的说明配置内置调试器。

    要使您对 HTML、CSS 或 JavaScript 代码所做的更改立即在浏览器中显示而无需重新加载页面,请启用 Live Edit 功能。 有关实时编辑功能的更多信息,请参阅 在 HTML、CSS 和 JavaScript 中进行 Live Edit

调试在内置服务器上运行的应用程序

WebStorm 具有内置 Web 服务器,可用于在 Web 浏览器中调试应用程序,或在 WebStorm 的内置浏览器中预览代码。 该服务器始终运行,无需手动配置。

开始调试

  1. 根据需要在 JavaScript 代码中设置 breakpoints

  2. 打开引用要调试的 JavaScript 的 HTML 文件,或在 Project tool window 中选择该 HTML 文件。

  3. 在编辑器或所选内容的上下文菜单中选择 调试 <HTML_file_name>。 WebStorm 会生成一个调试配置并通过该配置启动调试会话。 该文件将在浏览器中打开,并显示 Debug tool window

  4. 调试 工具窗口中,照常操作: 逐步执行程序停止并恢复程序执行、 在挂起时进行检查 ,浏览调用堆栈和变量,设置监视,计算变量值, 查看实际 HTML DOM 等。

示例

假设您有一个简单的应用程序,由一个 index.html 文件和一个 index.js 文件组成,其中 index.html 引用 index.js

一个简单的客户端应用程序

要使用内置服务器调试该应用程序,请在 index .js 中设置一个断点,在编辑器中打开 index .html ,然后从上下文菜单中选择 调试 'index.html'

从编辑器开始调试会话

WebStorm 会自动创建一个 run/debug configuration 并启动调试会话。

调试会话开始,应用在浏览器中打开

要重新启动新的 run/debug configuration,请从列表中选择它并点击 调试按钮

重新启动调试会话

在浏览器中重新加载当前页面

除了点击 重新运行 按钮(重新运行按钮 )在 调试 工具窗口中重新启动应用程序外,您还可以使用 在浏览器中重新加载 操作重新加载当前定位的页面。 这与 Chrome 中的 Reload Page 功能(Ctrl+R )效果相同。

  • 要重新加载当前页面,请点击工具栏上的 更多图标 并选择 在浏览器中重新加载在浏览器中重新加载)。

    在浏览器中重新加载操作

以下示例显示了一个简单的应用程序,由两个 HTML 页面和一个 JavaScript 脚本组成。 起始 home.html 页面上有一个 提交 按钮,点击后会打开 calculator.html 页面,并显示 Calculator.js 脚本的执行结果。

在调试会话期间,点击 重新运行 按钮(重新运行按钮 )会重新加载包含 home.html 按钮的 提交 页面。 点击 在浏览器中重新加载 按钮(浏览器中的重新加载按钮 )会重新加载 calculator.html 页面,从而清除所有先前的脚本输出,并使调试器返回 Calculator.js 的第 1 行。

在浏览器中重新加载当前页面

调试在开发模式下 localhost 上运行的应用程序

如果您的应用程序在 localhost 上以开发模式运行,您可以从内置的 终端Alt+F12)、 Run tool windowDebug tool window 启动调试。 按住 Ctrl+Shift 并点击应用程序运行的 URL。

  1. 在代码中设置 breakpoints

  2. 以开发模式启动应用程序,例如使用 npm 脚本。

  3. 运行 工具窗口或 终端 会显示应用程序正在运行的 URL。 按住 Ctrl+Shift 并点击该 URL 链接。 WebStorm 会使用自动生成的 配置启动一个类型为 JavaScript Debug 的调试会话。

    新终端:浏览器中开始调试按钮

这同样适用于调试 Vue.jsAngularReactNode.js 应用程序。

调试在远程 Web 服务器上运行的应用程序

您通常可能希望调试正在外部开发 Web 服务器上运行的客户端 JavaScript。

调试在远程服务器上运行的应用的客户端 JavaScript 代码

什么是远程 Web 服务器?

在 WebStorm 中,任何 document root 位于当前项目之外的服务器都称为 remote。 该服务器可能实际运行在远程主机上,也可能运行在您的计算机上。

例如,如果您的项目位于 C:/WebStormProjects/MyProject ,且 Web 服务器的文档根目录为 C:/XAMPP/htdocs ,则对于 WebStorm,该 Web 服务器是 远程 的。

如何将服务器上的应用源代码与 WebStorm 项目中的本地副本同步?

若要在 远程 Web 服务器上调试应用程序,您需要在 一个 WebStorm 项目中包含其源代码的副本。 若要同步本地和远程源,需按照 创建远程服务器配置连接到 Web 服务器 中所述创建 部署配置

在远程 Web 服务器上调试应用程序

  1. 根据需要在 JavaScript 代码中设置 断点

  2. 创建 JavaScript 调试 类型的运行/调试配置:

    转至 运行 | 编辑配置 ,然后在 编辑配置 对话框中,在打开的 编辑配置 对话框中,点击工具栏上的 添加 按钮(添加按钮 ),并从列表中选择 JavaScript 调试

  3. 在打开的 运行/调试配置:JavaScript Debug 对话框中,指定应用程序的运行 URL 地址。 此 URL 地址应为 Web 服务器根 URL 与 HTML 文件相对于 Web 服务器文档根路径的拼接,符合 服务器访问配置 的要求。 有关详细信息,请参阅 连接到 Web 服务器

    点击 确定 以保存配置设置。

  4. 在工具栏的 选择运行/调试配置 列表中选择新创建的配置,然后点击 调试 按钮 启动调试器。 运行配置中指定的 HTML 文件将在所选浏览器中打开,并显示 调试工具窗口

  5. 调试 工具窗口中照常执行操作: 逐步执行程序暂停并恢复 程序执行、 在中断时检查状态 、查看调用堆栈和变量、设置监视、计算变量、 查看实际 HTML DOM 等。

示例:无映射调试

假设您有一个简单应用程序,由一个 index.html 文件和一个 App.js 文件组成,其中 index.html 引用了 App.js

  1. 现在我们将部署该简单应用到本地 Web 服务器,参见 部署您的应用。 在以下示例中,它是 Apache:

    在外部 Web 服务器上调试 JavaScript:远程主机上的已上传源代码
  2. 若使用本地 Web 服务器(如示例中的 Nginx 或 Apache),或者 Web 服务器位于远程主机上,您需要创建运行/调试配置以启动 JavaScript 调试器。 为此,在 WebStorm 窗口右上角点击列表并选择 编辑配置。 或者,从主菜单选择 运行 | 编辑配置

    在外部 Web 服务器上调试 JavaScript:打开编辑配置对话框

    运行/调试配置 对话框中,点击 并从列表中选择 JavaScript 调试

    创建 JavaScript 调试配置

    指定正在运行的应用的 URL,在本示例中为 http://localhost:8888/MySimpleApp/index.html

    运行应用程序的 URL

    在我们的示例中,本地项目结构与服务器上的文件结构一致,因此无需设置映射。

  3. 现在我们可以开始调试了:在 WebStorm 窗口右上角的列表中选择新建的运行/调试配置,然后点击 调试按钮

    编辑器、主菜单和工具栏

    调试 工具窗口中照常执行操作: 逐步执行程序暂停并恢复程序执行、 在中断时检查状态 、查看调用堆栈和变量、设置监视、计算变量、 查看实际 HTML DOM 等。

映射

映射用于建立 Web 服务器上文件与其本地副本之间的对应关系。 您需要映射的情况包括:

  • 当您的应用程序部署并运行在 远程 Web 服务器上时。

  • 当除了项目根目录外,您还定义了多个资源根文件夹时。

WebStorm 会尝试从 部署配置 中或根据文件与脚本名称和内容来推测路径映射。 但如果应用结构较为复杂,则需要手动指定路径映射。

配置映射

  1. 创建 JavaScript Debug 类型的调试配置,具体请参阅 调试应用程序

  2. 本地文件的远程 URL 区域,根据当前使用的 部署配置 ,将文件和文件夹映射到服务器上的 URL 地址。请参见 将本地文件夹映射到服务器文件夹及其访问 URL 的方法

示例:使用映射调试

假设出于某种原因,您决定更改应用程序在 前面的示例 中的文件夹结构,并将 index.html App.js 移动到单独的文件夹 src

本地文件夹结构与远程 Web 服务器上的文件夹结构不同

由于本地源文件与 Web 服务器上的应用程序结构不同,调试器将无法将本地源文件与实际执行的代码同步。

为解决该问题,让我们将应用程序根目录的 URL 地址映射到 src 文件夹。

  1. 开始创建运行/调试配置, 如上所述

  2. 运行/调试配置 对话框中,在 本地文件的远程 URL 区域点击

  3. 在打开的对话框中,选择 src 文件夹下的 MySimpleApp

  4. 远程 URL 字段中输入应用的 URL 地址,本示例中为 http://localhost:8888/MySimpleApp

    URL 映射
  5. 保存运行/调试配置并 如前所述启动。

有关更多调试示例,请参阅 WebStorm 博客中的以下文章: 调试 React 应用程序调试 Angular 应用程序

调试异步代码

WebStorm 支持调试异步的客户端 JavaScript 代码。 WebStorm 能识别异步代码中的断点,在断点处停止并允许您逐步执行这些代码。 当异步函数中的断点被触发,或者您进入异步代码时,将在 面板的 调试器 选项卡中添加一个新元素 Async call from <caller>。 WebStorm 会显示完整的调用堆栈,包括调用者以及到异步操作起点的整个路径。

调试异步 JavaScript 代码

在上面的示例中,调试器会在第 3 行(断点)停止,然后在第 5 行(断点)停止。 单击 步入 后,调试器将在第 5 行(位于 function )停止,然后移动到第 6 行。

默认启用异步调试模式。 要禁用异步堆栈跟踪,请在 注册表中将 js.debugger.async.call.stack.depth 设置为 0

调试 worker

WebStorm 支持调试 Service WorkersWeb Workers。 WebStorm 能识别每个 worker 中的断点,并将其调试数据作为单独的线程显示在 面板与 调试器 选项卡中的 Debug 工具窗口中。

请注意,WebStorm 只能调试 专用 worker ,当前不支持调试 共享 worker

  1. Workers 中设置 断点以进行调试。

  2. 如果您在使用 Service Workers ,请确保在 调试器页面(设置| 构建、执行、部署 | 调试器 )中已选中 允许未签名的请求 复选框。 否则,在调试会话期间,您的 service workers 可能无法使用。

  3. 如上所述,在 调试运行在外部 Web 服务器上的客户端 JavaScript中,创建一种类型为 JavaScript Debug 的调试配置。

  4. 在工具栏上的 运行 小部件列表中,选择新创建的 配置,并单击其旁边的 调试按钮

    运行配置中指定的 HTML 文件将在浏览器中打开, Debug 工具窗口将打开,并显示 列表,列出所有可用的 Workers

    调试 Service Worker

    要查看某个 Worker 的数据(变量、监视等),请在列表中选择其线程,并在 变量监视 面板中查看其数据。 选择其他 Worker 时,面板内容将随之更新。

调试 Chrome 扩展

在 WebStorm 中,您可以通过运行/调试配置类型 Attach to Node.js/Chrome 来调试 Chrome 扩展。 请注意,您需要使用 自定义 Chrome 用户数据配置文件启动 Chrome,详细信息请参阅 使用首选的 Chrome 用户数据启动调试会话

创建 Attach to Node.js/Chrome 运行/调试配置

  1. 转到 运行 | 编辑配置。 或者,在工具栏的 运行 小部件中,选择 编辑配置

    打开编辑配置对话框

    在打开的 编辑配置 对话框中,单击工具栏上的 添加 按钮(添加按钮 ),然后从列表中选择 附加到 Node.js/Chrome

    选择 Attach to Node.js /Chrome 配置类型

    将打开 运行/调试配置:Attach to Node.js/Chrome 对话框。

  2. 指定配置名称并接受预定义的主机和端口值 localhost:9229

    创建 Attach to Node.js/Chrome 运行/调试配置
  3. 单击 应用确定 以保存配置并关闭对话框。

运行 Chrome 并加载扩展

  1. 从命令行运行 Chrome ,以指定远程调试端口及 您的 Chrome 用户数据目录

    打开嵌入式 终端Alt+F12 )并输入:

    <path_to_chrome_executable> --remote-debugging-port=<port_specified_in_run_configuration> --user-data-dir=<your_Chrome_user_data_directory>
  2. 将解压扩展加载至打开的 Chrome 窗口中。

开始调试

  1. 在必要位置 设置断点

  2. 在工具栏的 运行 小部件列表中,选择新创建的 附加到 Node.js/Chrome 配置,并点击其旁边的 调试按钮

    选择 Attach to Node.js/Chrome 配置

    将打开 Debug 工具窗口

  3. 前往加载扩展的 Chrome 标签页。

  4. 切换到 WebStorm。 在 调试 工具窗口中, 单步执行断点 、在帧之间切换、即时更改值、 检查已挂起的程序计算表达式以及 设置监视

最后修改日期: 2025年 9月 26日