javascript-JS:重命名变量以进行重构(使用AST,而不是文本)
作者:互联网
重构代码时,我经常需要重命名变量,目前我正使用正则表达式以某种不明智的方式进行操作-由于缺乏实际的结构,我最终不得不采用愚蠢的文本解决方法,例如,将“ req”重命名为“ request”并避免使用类似“ require”之类的副作用.
考虑一下这些东西:有点像用正则表达式修改DOM:只是行不通.
我已经了解了AST和Esprima等代码结构修改工具.是否有工具可以重命名变量,基于Esprima还是其他?
解决方法:
1. handle.js
看起来http://graspjs.com/确实做到了这一点.
grasp selector --replace replacement file.js
例如,要将“ el”重命名为“ element”:
grasp '#el' --replace 'element' index.js
2. vscode
Visual Studio Code还包括一个真正的替代工具.只需右键单击令牌,然后选择重命名符号.
标签:abstract-syntax-tree,javascript,parsing,refactoring 来源: https://codeday.me/bug/20191122/2060728.html