shimotsu tech

Webフロントエンドエンジニア @ to-R inc.

javaScriptのモジュールパターンについて

JavaScriptでは関数内で定義した変数は外からアクセスできないようになっている(関数スコープ)。これを利用してプライベートな空間を作れる。

モジュールパターン に則ってモジュール化するメリットは以下のとおり。

  • 機能ごとにモジュール化できるので、全体が見通しやすく、可読性が高い。
  • 簡単にプライベートな空間が作れる(他で定義した関数などと干渉しなくなる)

 
qiita.com


参考記事にあるように、returnで公開する機能を限定できる。

var userModel = (function(){
    //private
    var users = [
        // ここに処理
    ];
    function add(name) {
       // ここに処理
    }
    function getList() {
       // ここに処理
    }
    function getUserById(id) {
       // ここに処理
    }
    return {
        add: add,
        getList: getList,
        getUserById: getUserById
    }
})();