Я провел простой тест на трех компрессорах JavaScript: Yuicompressor, Yuglify и Google Closure Compiler.На моем компьютере с Ubuntu 12.10 я загрузил двоичные файлы каждого компрессора, а затем протестировал этот файл на каждом из них:
function dbz(){
var goku = 1
var vegeta = 2
var freeza = 3
console.log(goku + vegeta + freeza)
}
dbz()
И вот результаты:
Yuicompressor(2.4.7):
function dbz(){var b=1;var c=2;var a=3;console.log(b+c+a)}dbz();
Yuglify (0.1.2):
function dbz(){var e=1,t=2,n=3;console.log(e+t+n)}dbz();
Closure-Compiler (версия 20121212 ревизия 2388):
function dbz(){console.log(6)}dbz();
Хотя это очень простой пример, все отлично работало со строками с пропущенными точками с запятой.Все они обнаружили строки без точек с запятой в конце, добавили их и впоследствии удалили разрыв строки.