ソースコードからコメントや余計なスペースを取り除き、ローカル変数も短い名前にしてくれる。またデバッグしやすいように改行はそのまま残すようになっている。
これを使うと自分のスクリプトサイズは半分以下になるのだが、問題がいくつかある。
1.UTF-8 のソースで日本語を含んでいるとエラーになる。
→一旦 SJIS に変換してから圧縮し UTF-8 に戻さなければならない。
2.eval の評価が正しく行われない。
function a(obj) {
obj.f();
eval('obj.f();');
}
↓
function a(_1) {
_1.f();
eval('obj.f();'); // ここが変わらない...。
}
と言う感じになる。仕方が無いので、この部分だけ手で修正している。
やはり、他のソフトを探すかな...