今回はクロージャとグローバル変数の用途の違いについてです。
少し前に自分が担当していたプロジェクトを見返しているとグローバル変数をやたら使っていて
ものすごく見にくい・バグが起こりやすい状態だったので代替え手段としてクロージャを
使えば綺麗になるかなと思いここに至りました。
試しにメールアドレスを内包したクロージャ書いてみます。
</pre> <div>(function($, window, document, undefined){</div> <pre></pre> <div> var addressOperation = function (){</div> <div> var address = "";</div> <div> return {</div> <div> addAddress:function(ad){address = ad},</div> <div> getAddress:function(){ return address},</div> <div> }</div> <div></div> <div> }</div> <div> var itou = addressOperation();</div> <div> itou.addAddress("itou.cooldvalues@example.com")</div> <div> console.log(itou.getAddress());</div> <div></div> <div> var minoru = addressOperation();</div> <div> keisuke.addAddress("minoru.Vancouverdid@example.com")</div> <div> console.log(keisuke.getAddress());</div> <div></div> <pre></pre> <div> }(jQuery, window, this.document));</div> <div>