2014年8月17日日曜日

JavaScriptでクラス風の書き方

JavaScriptにて、Javaでいうところのクラスを書きたいときの方法。

1. publicで非staticなメソッドの実装

これには次の2通りの実装方法がある。

1. prototypeプロパティにfunctionを追加する
2. thisにfunctionを追加する

基本は 1 の実装方法をとるが、場合によっては 2 の方法をとる。

2. publicでstaticなメソッドの実装




3. privateで非staticなメソッドの実装



4. privateでstaticなメソッドの実装




基本形


var classFunc = (function(){

    var fn = function(){

        // パブリック・フィールド
        this.public_field1 = 0;

        // パブリック・メソッド1
        this.public_method1 = function(){

        }
    }

    // パブリック・メソッド2
    fn.prototype.public_method2 = function(){
        
    }

    // 静的パブリック・メソッド
    fn.public_static_method = function(){
       
    }

    // 静的パブリック・フィールド
    fn.public_static_field = 1;

    // プライベート・メソッド(呼び出し方により静的か否かが変わる)
    var private_method = function(){
        
    }

    // プライベート・フィールド
    var private_field = 10;

    return fn;

})();

0 件のコメント:

コメントを投稿