ReSharper 2025.3 Help

JavaScript 的重构

执行重构

  1. 将插入符号放在一个符号上,选择您想要重构的代码片段,或在工具窗口中选择一个项目。

  2. 执行以下操作之一:

    • 从主菜单中选择 ReSharper | 重构 ,然后选择所需的重构。 此菜单中可用的重构列表取决于当前上下文。 如果 ReSharper 无法为上下文建议任何重构,则整个菜单将被禁用。

    • 在编辑器、 文件结构 窗口或其他 ReSharper 窗口中,右键单击要转换的项目,从上下文菜单中选择 重构 ,然后选择所需的重构。

    • 从主菜单中选择 ReSharper | 重构 | 重构此项 ,或按 Control+Shift+R 显示适用重构的列表,然后选择其中一个。 您还可以在选择的上下文菜单中选择 重构

    • 使用分配给特定重构的 默认键盘快捷键 ,或为您喜欢的重构命令 分配自定义快捷键

  3. 如果所选的重构需要用户输入,则会打开重构向导。 请注意,向导的对话框不是模态的,因此您可以在向导打开时编辑代码。

    要回滚重构操作,向导提供了选项 要启用撤销,请打开所有包含更改的文件进行编辑。 如果您选择此选项,ReSharper 会在新的编辑器选项卡中打开所有已修改的文件,并允许您回滚重构。 在这种情况下,您需要自行保存更改。 如果未选择此选项, ReSharper 会自动保存已修改的 文件,而无需打开它们。

  4. 如果重构操作会导致代码冲突(例如重复的名称、可见性冲突等),向导会在最后一步显示冲突列表,然后您再应用重构。 对于某些冲突,向导还可以建议快速修复。 更多信息,请参阅 解决重构中的冲突

在您修改编辑器中的代码后,某些重构功能会立即可用。 有关更多信息,请参阅 就地重构

引入变量

此重构允许您基于选定的表达式创建一个新的局部变量或常量,用该表达式对其进行初始化,并最终用新引入变量的引用替换方法中所有出现的该表达式。

您还可以使用专用快捷键 Control+Alt+V 调用此重构。

在下面的示例中,我们使用此重构将同一字符串的两次出现替换为一个变量:

function logError() { alert("Something has failed..."); if (typeof window.console != 'undefined') { console.log("Something has failed..."); } }
function logError() { var message = "Something has failed..."; alert(message); if (typeof window.console != 'undefined') { console.log(message); } }

为子字符串引入变量

此重构帮助您快速将字符串的一部分移动到单独的变量中。

如果在 ReSharper 设置中将 ECMAScript 6 选为语言级别,则重构将为提取的子字符串添加一个新的模板参数。 如果语言级别是 ECMAScript5,则使用字符串连接:

重构前

重构后(ECMAScript 6)

重构后(ECMAScript 5)

var helloWorld = "Hello, World";
let world = "World"; var helloWorld = `Hello, ${world}`;
var world = "World"; var helloWorld = "Hello, " + world;

内联变量

此重构允许您用变量的初始化器替换代码中变量的所有出现。 请注意,仅当变量值在初始化后保持不变时才应应用此重构。

您还可以使用专用快捷键 Control+Alt+N 调用此重构。

在下面的示例中,我们使用此重构内联了 reversed 变量。

function reverseString(input) { var reversed = input.split("").reverse().join(""); return reversed; }
function reverseString(input) { return input.split("").reverse().join(""); }

移至资源

在由 Visual Studio 模板(例如 Apache Cordova)创建的 JavaScript 项目中,ReSharper 允许将字符串字面量移动到 资源文件中。 ReSharper 还可以选择在所需范围内查找所有相同的字符串,并用资源的使用替换它们。 要执行此重构,您的项目中需要至少有一个资源文件(通常具有 .resjson 扩展名)。

您还可以使用专用快捷键 F6 调用此重构。

重命名

此重构允许您更改解决方案中任何符号或项目的名称。 所有对该符号的引用和使用都会自动更新。

您还可以使用专用快捷键 F2 调用此重构。

您可以使用此重构重命名以下 JavaScript 实体:对象字面量、对象字面量的属性、函数、函数参数、变量

最后修改日期: 2025年 12月 8日