20

ここでDeanEdwardsjavascript packerを見つけました:http: //dean.edwards.name/packer/

いくつかのオプションがあります、

  1. Base62エンコード
  2. 変数を縮小する

それをテストするために、すでに56kbに縮小されているjqueryの最新バージョンを取得し、シュリンク変数を使用して上のページで実行したところ、結果は同じサイズのファイル、56kbになりました。

次に、Base62エンコード変数とShrink変数の両方を選択して元のファイルを再度実行すると、42kbのファイルが作成されました。

今、私は他の縮小とパッキングについて多くを知りません、そしてそれはファイルサイズをより小さくします。しかし、Base62エンコードが何をしているのか知りたいのですが、それを使用するのは悪いことですか?ファイルがはるかに小さくなりますが、後でページ上でデコードするために、より多くの作業/負荷が発生しますか?

4

2 に答える 2

17

それはクライアントでより多くの仕事を生み出します。クライアントは、エンコードされたスクリプトをデコードするためにコードを実行する必要があります。エンコーディングブロックにほんの少しのコードを入力すれば、これは非常に明白です。

例えば:

var a = 10;

次のようにエンコードします:

eval(function(p,a,c,k,e,r){e=String;if(!''.replace(/^/,String)){while(c--)r[c]=k[c]||c;k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('0 1=2;',3,3,'var|a|10'.split('|'),0,{}))
于 2009-08-29T14:29:31.083 に答える