1

我正在寻找一种工具来压缩我的 JS 文件。

我想要的不仅仅是简单地删除不必要的字符;我更喜欢工具能够减少函数中局部变量的长度。

更好的是,该工具可以减少所有其他内容的长度,如全局变量、函数名等。这是为了保护代码不被 Web 查看者在未经我们同意的情况下使用。

例如,该工具应将变量或函数名称从“some_variable”、“some_function”重命名为“sv”、“sf”等。然后重构所有相关引用。

我试图挖网,但找不到类似的东西。

4

3 回答 3

2

我认为这个可以帮助你: http: //www.minifyjavascript.com/

我过去用过它,它做得很好!

于 2012-05-03T10:48:33.930 回答
1

试试 YUI 压缩器:

http://developer.yahoo.com/yui/compressor/

对我来说,它似乎是目前最强大的之一。

于 2012-05-03T10:48:40.910 回答
1

Google Closure Compiler就是这样做的。它有各种设置,但即使是“简单优化”设置也会缩短变量名称和(在它知道函数永远不会在脚本之外调用的情况下)函数名称。当需要节省时,它甚至会内联函数。

例如,给定这个脚本:

jQuery(function($) {
    var allDivsOnThePage = $("div"),
        someParagraphsAsWell = $("p");

    setColor(allDivsOnThePage, "blue");
    setColor(someParagraphsAsWell, "green");

    function setColor(elms, color) {
        return elms.css("color", color);
    }
});

使用带有简单优化的闭包编译器(并告诉它我们正在使用 jQuery)产生:

jQuery(function(a){var b=a("div"),a=a("p");b.css("color","blue");a.css("color","green")});

请注意,它不仅缩短了标识符,而且在它检测到可能的地方重用了一个(在这种情况下,这并没有为我们节省任何东西,但在其他一些情况下它可以),并内联setColor函数,因为这导致了节省。

于 2012-05-03T10:48:42.940 回答