>  2015/01/29 (木) 11:36:28        [qwerty]
> > 完全カプセル化
> function Counter(cnt) {
>   var count = cnt;
>   return function() { // 無名関数→これがクロージャじゃ!
>     return ++count;   // スコープチェーンにより外部ローカル変数countを参照
>   };
> }
> var f1 = Counter(0);
> console.log(f1()); //  1
> console.log(f1()); //  2
> console.log(f1()); //  3
> 
> var f2 = Counter(10);
> console.log(f2()); // 11
> console.log(f2()); // 12
> console.log(f2()); // 13
> console.log(f1()); //  4
> console.log(f2()); // 14
> これがクロージャだ

はっきり言ってjsだとメモリリークするので使わない方がいい
記述は楽になるんだが

参考:2015/01/29(木)11時35分11秒