JavaScript
 Computer >> コンピューター >  >> プログラミング >> JavaScript

Node.jsでカスタムモジュールを作成する方法を徹底解説

Node.jsのモジュールとは、特定の関数やメソッドをまとめたパッケージのことで、それらをインポート(require)するコードから利用できるようにしたものです。開発現場では、fsfs-extracryptostreamなど、あらかじめ用意されたモジュールが広く使われています。しかし、Node.jsの魅力は既存モジュールを使うだけにとどまりません。自分独自のパッケージ(カスタムモジュール)を作成し、プロジェクト内で自由に再利用することも可能です。

カスタムモジュールの基本構文

カスタムモジュールを作成するには、exportsオブジェクトに関数を登録します。基本的な構文は以下のとおりです。

exports.function_name = function(arg1, arg2, ....argN) {
    // ここに関数の処理内容を記述します
};

実例:簡単な計算機モジュールを作ってみよう

ここでは、四則演算を行うカスタムモジュールを例に解説します。calc.jsindex.jsという2つのファイルを作成し、それぞれ以下のコードをコピーしてください。

  • calc.js:各種計算関数を持つカスタムモジュール本体です。
  • index.js:calc.jsをインポートして、Node.jsのプロセス内で実際に利用するファイルです。

calc.js(モジュール側のコード)

// カスタムノードモジュールの作成
// 複数の関数を定義してエクスポートします
exports.add = function (a, b) {
    return a + b; // 数値を加算
};

exports.sub = function (a, b) {
    return a - b; // 数値を減算
};

exports.mul = function (a, b) {
    return a * b; // 数値を乗算
};

exports.div = function (a, b) {
    return a / b; // 数値を除算
};

index.js(モジュールを利用する側のコード)

// 以下のステートメントでカスタムモジュールを読み込みます
var calculator = require('./calc');

var a = 21, b = 67;

console.log(a + " と " + b + " の加算結果は " + calculator.add(a, b) + " です");

console.log(a + " と " + b + " の減算結果は " + calculator.sub(a, b) + " です");

console.log(a + " と " + b + " の乗算結果は " + calculator.mul(a, b) + " です");

console.log(a + " と " + b + " の除算結果は " + calculator.div(a, b) + " です");

実行方法と出力結果

ターミナル(コマンドプロンプト)で以下のコマンドを実行すると、カスタムモジュールが正しく動作していることを確認できます。

C:\home\node>> node index.js
Addition of 21 and 67 is 88
Subtraction of 21 and 67 is -46
Multiplication of 21 and 67 is 1407
Division of 21 and 67 is 0.31343283582089554

ポイントまとめ

  • exports.関数名 = function() {...} の形式で、モジュール外部に公開したい関数を登録できます。
  • require('./calc') のように相対パスで指定することで、自作モジュールを読み込めます。拡張子「.js」は省略可能です。
  • 読み込んだモジュールはオブジェクトとして扱えるため、calculator.add() のような形で各関数を呼び出せます。

この仕組みを活用すれば、共通処理を別ファイルに切り出してコードの保守性や再利用性を高めることができます。ぜひ自分のプロジェクトでもカスタムモジュールの作成に挑戦してみてください。

  1. JavaScriptでカスタムエラーを作成する方法【サンプルコード付き】

    JavaScriptでは、組み込みのErrorクラスを継承することで、アプリケーション固有のカスタムエラーを簡単に定義できます。カスタムエラーを活用すると、エラーの種類や原因を明確に区別でき、デバッグやエラーハンドリングの精度が大きく向上します。 カスタムエラーの基本 カスタムエラーを作成するには、ES6のclass構文でErrorクラスをextendsし、コンストラクタ内でsuper()を呼び出してエラーメッセージを親クラスに受け渡します。さらに、this.nameに独自のエラー名を設定することで、標準のErrorオブジェクトと明確に区別できるようになります。 実装例 以下は、JavaS

  2. JavaScriptモジュール入門:ES2015のexportとimportを使いこなそう

    JavaScriptモジュールとは モジュールはES 2015(ES6)で導入された機能です。大規模化しがちなコードを、再利用しやすい小さな単位に分割することを目的としています。モジュールにはクラスや関数などを格納でき、exportキーワードで変数・関数・オブジェクトを外部に公開し、別のファイルからimportキーワードで読み込んで使用します。 注意:この記事のサンプルを実行するには、ローカルホストサーバーが必要です。HTMLファイルを直接開いた場合、CORSポリシーによりモジュールの読み込みがブロックされることがあります。 モジュールのメリット コードの分割により保守性が向上する 関数やク