2012-04-14 4 views
0

ネームスペースを定義できるjavascript minifierはありますか?私は、これらのすべてのミニライザが、a、b、cなどの短い変数名を持つコードを生成することを意味します。これは、他の縮小されたjavascriptと競合する可能性があります。ネームスペースでJavascriptを縮小する

+2

コードをグローバルスコープに書き込まないでください。それは公衆トイレのようなもので、あなたの露出を最小限に抑えたい。自己実行の無名関数でコードをラップします。 – mikeycgto

+1

ほとんどのミニマイザでは、変更したくない名前を指定できます –

+0

@mikeycgto:ouldあなたは私にそれを実現する方法を簡単に教えてくれますか? – SteMa

答えて

3

ほとんどの(良い)ミニファイアは、デフォルトでは名前空間であるため、グローバルスコープの変数だけを残します。

var page = (function(){ 
    var scopedVar = "I'm something like private."; 

    //do some other stuff 

    return { 
    usefulThing: function(){ 
     return scopedVar; 
    } 
    }; 
}()); 

minifierを通じてグローバルスコープの「ページ」VARを残す必要があることを実行:mikeycgtoはあなたが最小までそれらを保つことを確認することを示唆しました。 page.usefulThingはメソッドです(これは、minifierによって単独で残す必要があります)。 "scopedVar"は "a"や "o"などに変わるかもしれませんが、気にすることはありません。あなたのAPIは、内部がぶち壊されているものの、期待どおりになります。

関連する問題