ホームページ >ウェブフロントエンド >フロントエンドQ&A >Nodejsモジュールの使い方
Node.js は、イベント駆動型の非同期 I/O に基づいたオープンソースのクロスプラットフォーム JavaScript ランタイム環境です。 Node.js では、コードを整理するためにモジュールが使用されます。各モジュールは独立したファイルであり、インポート/エクスポートを通じてモジュール間で呼び出し、論理的に再利用できます。この記事ではNode.jsモジュールの基本的な使い方を紹介します。
Node.js では、require() 関数を使用してモジュールをインポートします。 require() 関数のパラメータは、インポートする必要があるモジュールの名前です。モジュール名には、相対パスまたは絶対パス、またはシステム モジュールを指定できます。
const module1 = require('./module1') const module2 = require('./module2') const fs = require('fs')
Node.js では、module.exports オブジェクトまたは exports オブジェクトを使用してモジュールをエクスポートします。 module.exports と exports のデフォルト値は空のオブジェクト {} ですが、module.exports は再割り当てできますが、exports は module.exports への単なる参照であり、再割り当てできません。
function add(a, b) { return a + b } module.exports = { add: add } exports.sub = function(a, b) { return a - b }
モジュールを読み込むとき、Node.js は読み込まれたモジュールをキャッシュして、操作効率を向上させます。同じモジュールが 2 回目にロードされると、Node.js は再ロードせずにキャッシュから直接読み取ります。
require() 関数で指定されたモジュール名がシステム モジュールではない場合、モジュール パスは次の順序で解析されます:
1. 指定された名前のモジュールがコア モジュールの場合、後続のパス解析はスキップされ、モジュールが直接返されます;
2. 指定された名前のモジュールが './ で始まる場合' または '../' を選択し、パス解決ルールに従ってモジュール ファイルを見つけます。パス解決ルールは次のとおりです。モジュールを含むディレクトリが現在のディレクトリの場合、ディレクトリ内で指定されたファイルを検索します。モジュールを含むディレクトリが $NODE_PATH 環境変数に追加されている場合、指定されたファイルはそのディレクトリ内にあります。モジュールを含むディレクトリが上記の 2 つのディレクトリにない場合、指定されたファイルは現在のディレクトリと $NODE_PATH 環境変数に追加されたディレクトリで検索されます;
3.指定された名前がコア モジュールではなく、「./」または「../」で始まるファイル名でもない場合、モジュール ファイルは次の順序で検索されます:
1.在包含该模块的目录下查找 node_modules 目录; 2.在当前目录下查找 node_modules 目录; 3.在已添加到 $NODE_PATH 环境变量的目录中查找 node_modules 目录;
4。ファイルがまだ見つからないため、エラーが発生します。
Node.js ではモジュール間の循環参照が許可されていますが、循環参照によりモジュールが未定義になる可能性があります。モジュールの循環参照を回避するには、エクスポートの使用方法とインポートのタイミングに注意する必要があります。
この記事では、モジュールのインポート、モジュールのエクスポート、モジュールのキャッシュ、モジュール パスの解決順序、モジュールの循環参照など、Node.js モジュールの基本的な使用方法を紹介します。これらの内容を理解することは、Node.js モジュラー プログラミングの考え方をより深く理解し、使用するのに役立ちます。
以上がNodejsモジュールの使い方の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。