前回はクロージャの基礎を解説しましたが、あれだけではイマイチなんの役に立つのかイメージが湧かないかもしれません。そこで今日は、もっと実用的な例を挙げてみようと思います。 private変数的なもの+アクセサを作る JavaScriptでクラス(的なもの)を作ろうとするとまず気になるのが、プロパティが全部publicになってしまうことです。JAVA等の言語の経験があれば、private変数が作れないというのがとても不便に感じると思います。どこからでも自由に値を変更できてしまうので、正常な動作を担保するのが難しいですね。 しかしクロージャを使えば、レキシカル変数の保持されつつも外部からアクセス出来ないという特性を利用して、クラス外部から保護された領域を作ることができます。 まず、普通にクラスを作ってみます。 function Multiplier(value1, value2) { this.