是否有任何Javascript minifier /压缩器会根据需要插入分号(或者使用不使用分号的源代码)?我开始使用一个非常棒的库,但开发人员认为分号是“不必要的混乱”......
答案 0 :(得分:3)
几年前,当我处于类似情况时,我似乎记得解决方案基本上“越多越好”!
首先,我通过Dojo Shrinksafe在非常适度的压缩设置上运行脚本。因为它使用Rhino,它实际上会解释JS,然后写出一个具有语法正确分号的等效版本。
从那里,我将输出馈送到Dean Edward's /packer/,其中(当时至少)是产生一致功能输出的最高压缩库。这个库要求输入有分号,但由于ShrinkSafe的输出,这不是问题。
(请注意,这是来自内存,我最近没有对它进行测试,但是没有理由为什么原理不应该再持有。如果ShrinkSafe没有为你插入分号,也许还有一些其他的JS预处理会自动执行此操作的工具吗?当然,模数是分号插入不是100%确定性的事实。