2017年9月12日火曜日

node.js の JavaScript モジュール分割

node.js で、ある機能をモジュールとして分割し、アプリケーションから呼び出して利用する例です。

Square 変数に、calc メソッド、print メソッドを実装します。node.js では、読み込まれる JavaScript は node.js 配下のクロージャーとして読み込まれます。このため、外部からこの JavaScript の機能にアクセスするには、module.exports にアクセス用の関数を定義します。ここでは calc メソッドを定義することで、Square 変数の内容を隠蔽化しています。

square.js
var Square = function(){
    var self = this;

    this.calc = function(x, y)
    {
        self.square = x * y;
        return self;
    }

    this.print = function(callback){
        callback(this.square);
        return self;
    }
}

module.exports = {
    calc: function(x, y){
        return new Square(x).calc(x, y);
    }
}


square.js に実装した calc メソッドを使って、面積の計算を行います。

app.js
var Square = require("./square.js");

Square
    .calc(3,5)
    .print(function(result){
        console.log(result);
    });


コンソール画面から、"node app.js" を入力して Enter 押下で実行します。

C:\dev\nodejs\Calc>node app.js
15

出力結果として 15 が得られました。

0 件のコメント:

コメントを投稿