WebStorm 快捷键速查表 - 前端开发 IDE 常用快捷键大全
WebStorm 把 JetBrains 级能力带给 JavaScript,而这些能力的回报要用快捷键才放得出来。本表按 JetBrains 键位覆盖编辑格式化、补全生成、导航、重构、运行调试、Git 与布局,重点标出对 JS/TS 特别值钱的键——智能补全、提取常量、查看 Git 历史等,正是它明显强过"编辑器 + 命令行"组合的地方。读完能免点工具栏,来回切文件、做重构、查 git 状态。
典型使用场景
面向在 JetBrains 系 IDE(以 macOS 版 WebStorm 为主)里做前端与 Node 开发的工程师。本表把七个功能域的快捷键归位:基础编辑(复制行、格式化、优化 import)、代码补全与生成(补全、生成 getter/setter、提取变量/常量/方法/字段/参数)、导航搜索(跳类、跳文件、跳符号、命令面板)、重构(重命名、内联、移动类)、调试(单步三件套)、Git 集成、窗口视图。真正高频的其实只有几组:Cmd+Shift+A 命令面板是忘键时的兜底,Shift+F6 重命名自动更新引用,Cmd+Option+L + Cmd+Option+O 是提交前的固定动作,F7/F8/Shift+F8 是调试主力。遇到快捷键在 Windows 版失效或想找功能入口时,从命令面板反查是最稳的路径。
基础编辑 10
Cmd + DCmd + YCmd + Shift + EnterCmd + /Cmd + Option + /Cmd + Option + LCmd + Option + OCmd + Option + ICmd + Shift + JCmd + Shift + U代码补全与生成 11
Cmd + SpaceCmd + Shift + SpaceCmd + PCmd + JCmd + NCmd + Option + TCmd + Option + VCmd + Option + CCmd + Option + MCmd + Option + FCmd + Option + P导航与搜索 13
Cmd + OCmd + Shift + OCmd + Option + OCmd + BCmd + Option + BCmd + UCmd + ECmd + Shift + ECmd + F12Cmd + GCmd + Shift + ACmd + Shift + FCmd + Shift + R重构 9
Shift + F6Cmd + F6Cmd + Option + VCmd + Option + CCmd + Option + MCmd + Option + NCmd + Option + KF6F5调试与运行 10
Ctrl + RCtrl + DCmd + F2F8F7Shift + F8Alt + F9Cmd + F8Cmd + Shift + F8Cmd + Option + RGit 集成 6
Cmd + KCmd + Shift + KCmd + TCmd + Option + ZCmd + Shift + ACmd + 9窗口与视图 8
Cmd + 1Cmd + 4Cmd + 7Cmd + 9Cmd + Shift + F12Cmd + Option + FCmd + ,Cmd + ;参数矩阵
| 参数 | 作用 | 示例 |
|---|---|---|
Cmd + D | 复制当前行到下一行 | Cmd + D |
Cmd + Y | 删除整行 | Cmd + Y |
Cmd + Shift + Enter | 补全语句,自动加括号与分号 | Cmd + Shift + Enter |
Cmd + / | 切换行注释 | Cmd + / |
Cmd + Option + L | 格式化代码 | Cmd + Option + L |
Cmd + Option + O | 优化 import,清理未用引用 | Cmd + Option + O |
Cmd + Option + I | 自动缩进 | Cmd + Option + I |
Cmd + Shift + J | 合并多行 | Cmd + Shift + J |
Cmd + Shift + U | 切换大小写 | Cmd + Shift + U |
Cmd + Space | 基础代码补全 | Cmd + Space |
Cmd + Shift + Space | 智能代码补全(补全链式调用) | Cmd + Shift + Space |
Cmd + N | 生成代码(构造函数、getter/setter) | Cmd + N |
Cmd + Option + T | 用 if / for / try 包裹选中的代码 | Cmd + Option + T |
Cmd + Option + V / C / M | 提取变量 / 常量 / 方法 | Cmd + Option + M |
Cmd + Option + F / P | 提取字段 / 参数 | Cmd + Option + P |
Shift + F6 | 重命名并自动更新所有引用 | Shift + F6 |
Cmd + Option + N | 内联变量,消掉多余中间变量 | Cmd + Option + N |
Cmd + Option + K | 安全删除(先查引用再删) | Cmd + Option + K |
F6 / F5 | 移动类或方法 / 复制类或方法 | F6 |
Cmd + O / Cmd + Shift + O | 跳转到类 / 跳转到文件 | Cmd + O |
Cmd + Option + O | 跳转到符号(方法/变量) | Cmd + Option + O |
Cmd + B / Cmd + Option + B | 跳转到声明 / 跳转到实现 | Cmd + B |
Cmd + U | 跳转到父类或接口 | Cmd + U |
Cmd + G | 跳转到指定行号 | Cmd + G |
Cmd + E / Cmd + Shift + E | 最近打开的文件 / 最近编辑的文件 | Cmd + E |
Cmd + F12 | 查看当前文件结构大纲 | Cmd + F12 |
Cmd + Shift + A | 命令面板,搜索所有操作 | Cmd + Shift + A |
Cmd + Shift + F / R | 全局查找 / 全局替换 | Cmd + Shift + F |
F7 / F8 / Shift + F8 | 单步进入 / 单步跳过 / 单步跳出 | F8 |
Alt + F9 | 运行到光标处 | Alt + F9 |
Cmd + F8 / Cmd + Shift + F8 | 切换断点 / 查看所有断点 | Cmd + F8 |
Ctrl + R / Ctrl + D | 运行当前配置 / 调试当前配置 | Ctrl + R |
Cmd + K / Cmd + Shift + K / Cmd + T | 提交 / 推送 / 拉取 | Cmd + K |
Cmd + Option + Z | 回退(Rollback)本次改动 | Cmd + Option + Z |
Cmd + 1 / 4 / 7 / 9 | 开关项目 / 运行 / 结构 / 版本控制面板 | Cmd + 9 |
Cmd + Shift + F12 | 最大化编辑器区域 | Cmd + Shift + F12 |
易错点与避坑指南
现象重命名后其他地方编译报错,函数明明已经改名成功
原因手动查找替换只改了当前文件或漏掉了动态引用;IDE 的重命名会基于索引更新全项目引用,手工替换做不到。
处置改用 Shift+F6 重命名,让 IDE 统一更新所有引用,再执行 Cmd + Option + O 清理残留 import。
现象格式化后代码反而乱了,和同事的版本产生大片无意义 diff
原因不同机器或不同项目的 Code Style 配置不一致,格式化按各自规则重排了缩进与引号。
处置在设置里统一代码风格并把配置文件纳入版本管理,提交前固定执行 Cmd + Option + L。
现象在 Windows 版 IDE 里按 Cmd 组合键毫无反应
原因本表快捷键以 macOS 的 Cmd 为主;Windows 版对应键位是 Ctrl + Alt,另有部分键需配合功能键。
处置用 Cmd + Shift + A 命令面板按功能名搜索操作,从面板里查看并执行当前系统下正确的键位。
现象全局替换后把注释、字符串甚至同名局部变量一起改了,行为悄悄出错
原因Cmd + Shift + R 只做文本级替换,不区分代码标识符与字符串字面量。
处置能用 Shift+F6 就用重命名;确需文本替换时先在预览里逐条确认,必要时缩小搜索范围。
现象调试时按 F7/F8 顺序混乱,总是一步步走进日志或工具库而看不到业务代码
原因F7 是单步进入,会进入所有函数调用包括三方库;F8 才是跳过本函数直接走一行。
处置默认改用 F8 单步跳过,只在真正需要看函数内部时按 F7,进入函数后用 Shift + F8 跳出。
现象Git 提交面板里找不到某个文件,或提交后改动仍显示为未提交
原因文件可能处于未跟踪状态或被部分排除,需要在版本控制工具窗口里确认 Changes / Untracked 两个分组。
处置打开 Cmd + 9 版本控制面板,把 Untracked 中的文件 Add 到暂存区后再执行 Cmd + K 提交。
现象Cmd + Option + V 提取变量时提示无法提取或把表达式算错了
原因选区不是合法表达式、跨了语句边界,或表达式里有副作用/多层调用,IDE 会拒绝或拆分不当。
处置只选中一个完整表达式再提取,必要时先手动加括号固定优先级,再执行 Cmd + Option + V。
现象命令面板里搜不到某个操作,误以为 IDE 没这个功能
原因命令面板按已绑定动作名匹配,中文或口语化描述往往命中不了,需要用动作英文名或功能关键词。
处置改用功能关键词(如 format、rename、extract)重新搜索;确实没有就用设置里的 Keymap 自定义快捷键。
排障路径
1找不到快捷键时从命令面板反查
Cmd + Shift + A → 输入功能关键词(如 format / rename)命令面板会列出所有匹配动作及其当前系统下的键位,这是跨平台查键的唯一可靠途径;记不住快捷键时一律走这里。
2提交前的标准两连
Cmd + Option + L(格式化)→ Cmd + Option + O(优化 import)→ Cmd + K(提交)格式化统一缩进引号,优化 import 删除未使用的引入,两者执行后 diff 只剩真实逻辑改动,评审噪音最少。
3大范围跳转定位定义
Cmd + O(跳类)→ Cmd + Shift + O(跳文件)→ Cmd + Option + O(跳符号)→ Cmd + B(跳声明)这四类入口覆盖了绝大多数「我要找它在哪」的诉求;Cmd + B 从用法跳声明、Cmd + Option + B 从接口跳实现,配对使用能快速看清调用链。
4重构前先确认引用面
选中符号 → Shift + F6(重命名,预览受影响处)→ Cmd + Option + K(安全删除)IDE 重命名前会列出所有引用位置,确认没有遗漏的字符串或配置文件引用后再执行;删除前用安全删除检查残留用法,比直接删安全。
5标准调试流程
Ctrl + D(调试)→ Cmd + F8(打断点)→ F8 跳过 / F7 进入 / Shift + F8 跳出 → Cmd + F2(停止)先打断点再启动调试,用三件套控制粒度:F8 走本行不深入、F7 进入函数内部、Shift + F8 立刻返回上层。停在断点时用 Cmd + Shift + F8 确认断点是否打在有效代码路径上。
6误操作后回退与找回文件
Cmd + Option + Z(Rollback)→ Cmd + E(最近打开的文件)Rollback 丢弃当前文件本次未提交的修改;Cmd + E 列出最近打开过的文件,配合 Cmd + Shift + E 看最近编辑记录,可以快速找回误关或误跳走的上下文。
7免鼠标查看结构与定位行号
Cmd + F12(文件结构大纲)→ Cmd + G(跳到行号)F12 大纲在长文件里比滚动快得多,能看清函数与类的层级;Cmd + G 用于从报错堆栈里的行号直接跳到出错位置。
命令示例
不记快捷键,用命令面板找功能
Cmd + Shift + A输入关键词(commit、reformat、extract)即可搜到所有动作,Git 命令也在里面。忘记快捷键时这是最快的路,比翻 Settings 里找键位表省事得多。
长表达式重构成具名变量
Cmd + Option + V选中一段表达式后执行,会自动在当前作用域声明变量并替换所有引用,选 Ctrl+Alt+V 再多步可边提取边重命名。
跨文件安全重命名
Shift + F6基于索引做全量重命名:接口、字符串引用、测试、配置文件一并更新,回车前有预览面板能确认改了多少处。这是手工全局替换(Cmd+Shift+R)安全得多的做法。
调试三件套:断点、单步进入、单步跳过
Cmd + F8
F7
F8
Shift + F8Cmd+F8 切换断点,F7 进入方法内部,F8 跳过整行不进去,Shift+F8 直接跳出当前方法。分不清 F7 与 F8 时先记住:F7 是往里钻,F8 是往外走。
生成样板代码,不手敲 getter
Cmd + N对类名触发生成构造函数、getter/setter、equals/hashCode、实现接口的方法;生成后直接填实现,比手写再排格式错误快。
常见坑与注意事项
- Cmd+Shift+R 全局替换不带语义理解,替换后会破坏字符串拼接、注释和 XML 配置;重构应当用 Shift+F6 这类带索引的 IDE 重命名。
- Cmd+Option+N 内联变量会直接删掉被提取的表达式,如果那个表达式有副作用(调用方法、改变状态),语义会被静默改掉。
- Cmd+Option+K 安全删除只分析已知符号,字符串反射、DI 容器按名字查找、XML 里配置的类引用删掉后编译期无报错,只在运行时炸。
- Cmd+K 提交与 Cmd+Shift+K 推送是独立动作,推送不会自动带上提交;以为「推了」其实代码还停在本地,是版本控制里最常见的误判。
- Cmd+Option+R 回退(Rollback)会丢弃当前文件的未提交修改,且不经过确认对话框;先 Cmd+Shift+E 切到别的文件再按,可能就永远丢了。
- Delete 键不带 Cmd 直接按是「删除到行尾」,不是删除选中内容;光标停在代码中间时会把后半段代码直接删掉。
提示
- Cmd + Shift + A 是命令面板,可以搜索所有操作,不用记快捷键。
- Cmd + O 和 Cmd + Shift + O 可以快速跳转类和文件,比鼠标点击快很多。
- 重构快捷键(Shift + F6 重命名)会自动更新所有引用,比手动查找替换安全。
- Cmd + E 显示最近打开的文件,快速切换非常有用。
- Cmd + Option + L 格式化代码,Cmd + Option + O 优化 import,提交前建议执行。
- 调试时 F7 进入函数、F8 跳过函数、Shift + F8 跳出函数,掌握这三个就够了。
常见问题
不想记快捷键,有什么入口能直接搜到所有操作?
命令面板:Cmd + Shift + A 打开后输入动作关键词即可搜索全部命令,包含 Git 操作、导航、重构、运行配置等,连菜单里找不到的操作也能命中。同一套思路还有 Cmd + Shift + F(全局查找文本)、Cmd + Shift + R(全局替换)和 Shift + Shift 之外的全项目跳转路径。养成习惯是:先按 Cmd + Shift + A 搜一次,记住高频命令的键位,低频命令就永远交给面板。
改名怕漏改引用,WebStorm 的重构快捷键比查找替换好在哪?
Shift + F6 重命名会先在 IDE 内做引用分析,列出所有受影响的位置供你预览确认,然后一次性同步修改符号定义与全部调用点,提交前还能撤销。它与 Cmd + Shift + R 的查找替换本质不同:后者是纯文本匹配,会误伤字符串、注释和同名但不同作用域的符号。同理 Cmd + Option + M(提取方法)、Cmd + Option + C(提取常量)、Cmd + Option + F(提取字段)也都是带引用分析的重构。
调试时 F7、F8、Shift+F8 分别该按在什么时机?
F7 单步进入:跳进当前光标所在的方法体内部;F8 单步跳过:把整行执行完但不进函数,适合跳过 getter、log 这类不想看的代码;Shift + F8 单步跳出:从当前方法返回到调用处,跳出循环或长链式调用时用它快速回到上层。Alt + F9 则直接跑到光标所在行,不必逐行按。调试入口是 Ctrl + R 运行与 Ctrl + D 调试,用 Cmd + F8 打点、Cmd + Shift + F8 查看全部断点。
Cmd + O、Cmd + Shift + O、Cmd + Option + O 三个跳转该怎么选?
三者的搜索粒度不同:Cmd + O 按类名跳转到类文件,Cmd + Shift + O 按文件名跳转(不知道类名只知道文件片段时用),Cmd + Option + O 在当前文件内定位符号(方法、字段),不必离开文件。相关的一组还有 Cmd + B 跳到声明处、Cmd + Option + B 跳到实现处、Cmd + U 跳到父类或接口。类多的大项目里,先 Cmd + O 定位类再靠 Cmd + B / Cmd + Option + B 在声明与实现之间往返,比鼠标翻 Project 面板快得多。
提交前有哪些快捷键值得固化成肌肉记忆?
提交前至少跑三步:Cmd + Option + L 格式化代码、Cmd + Option + O 优化 import、Cmd + Option + I 自动缩进,它们都能作用于整个文件而不是选区。日常编辑则用 Cmd + D 复制当前行、Cmd + Y 删除整行、Cmd + / 切换行注释、Cmd + Option + / 切换块注释。Git 集成里 Cmd + K 提交、Cmd + Shift + K 推送、Cmd + T 拉取,Cmd + 9 打开 Git 工具窗口查看变更。
由 巧匠 维护
公开更新于 2026年7月21日,内容持续校对官方文档。