有没有一种简单的方法可以用命令行重构 javascript 代码?
Posted
技术标签:
【中文标题】有没有一种简单的方法可以用命令行重构 javascript 代码?【英文标题】:Is there an easy way to restructure javascript code with the command line? 【发布时间】:2018-05-27 21:05:20 【问题描述】:有时我看到网页正在执行来自 this one 等页面的 javascript 代码。
页面截图
问题是所有代码都打印在一行上,这使得人们无法阅读。 是否有一个命令行工具可以让我自动创建新行和缩进 javascript 代码?
【问题讨论】:
如果您正在寻找可以以有用的方式重新格式化 Javascript 代码的程序,那么这个问题与 shell 无关。如果您想使用标准控制台工具进行重新格式化,那么您必须定义如何完成。问题是使用例如空格或;
作为换行符可以改变代码的含义,如果它恰好被引用。如果您可以确定不是这种情况,那么任务就很简单了。
在被认为是“缩小”的javascript中,基本上是删除所有无关的空白和换行符以及其他一些效率修改。您想要一些东西来“缩小”这些文件,这可能很困难,具体取决于首先用于缩小文件的方法。快速搜索会发现一些声称可以执行 javascript 缩小的工具。
@GracefulRestart 谢谢,我不知道这个词。我进行了快速搜索,并在页面上找到了一个可以完成这项工作的在线工具:unminify.com。我要求使用 bash 解决方案,因为我认为已经存在的专门用于“缩小”代码的命令行工具的可能性很高。但现在只有这个在线工具对我有用......
我使用jsbeautifier
在极少需要批量还原时使用:pip install jsbeautifier
来安装。
【参考方案1】:
如 cmets 中所述,在 javascript 中删除空格和新行的过程称为"minification"
。为了进行相反的过程,我们需要寻找"unminify"
代码的工具。在命令行中,我们可以使用pip
安装jsbeautifier
:
pip install jsbeautifier
我们可以这样使用它:
js-beautify myMinifiedFile.js > myNewUnminifiedFile.js
或者,还有像unminify.com 这样的在线工具,我们可以在其中粘贴代码,它会执行相反的过程。
PS:缩小通常不是可逆操作,因为在此过程中可能会丢失信息。所以,像这样的工具只是用来美化代码的。
【讨论】:
【参考方案2】:您可以使用在线工具进行缩小,但如果您只是需要快速参考,Chrome 开发者工具可以在一定程度上进行缩小: http://codegabber.com/2018/05/31/unminify-code-using-chrome-developer-tools/
【讨论】:
以上是关于有没有一种简单的方法可以用命令行重构 javascript 代码?的主要内容,如果未能解决你的问题,请参考以下文章
代码重构 & JDTWindows命令行运行Java文件陷入死循环解决办法
代码重构 & JDTWindows命令行运行Java文件陷入死循环解决办法
有没有一种方法可以编写一个可以在 Windows 和 Linux 上运行的命令行游戏?