ホームページ >ウェブフロントエンド >jsチュートリアル >Nodeモジュールモジュールの使い方の詳細説明

Nodeモジュールモジュールの使い方の詳細説明

php中世界最好的语言
php中世界最好的语言オリジナル
2018-05-08 15:40:091757ブラウズ

今回はNodeモジュールの使い方について詳しく解説していきます。 Nodeモジュールを使用する際の注意点を実際の事例で見てみましょう。

複雑な Web アプリケーションを開発する場合、通常、各関数を別のファイルに分割してカプセル化し、必要に応じてそのファイルを参照する、つまりコードの モジュール化 管理を実行する必要があります。ほぼすべての プログラミング言語 には、Java のパッケージ、C# のアセンブリなど、独自の モジュール編成 があり、Node は CommonJS モジュール仕様を採用しています。

モジュール仕様

CommonJS は、ブラウザの外部で実行される JS を標準化することを目的としており、多数の JS の問題 (グローバルな名前の競合など) を解決してきました。 Node の CommonJS 実装では、各モジュールは個別の JS ファイルにカプセル化されます。つまり、ファイルはモジュールであり、ファイル パスはモジュール名です。各モジュールを作成する場合、次の 3 つの事前定義変数が使用可能です:

require()

この関数は、現在のモジュール内の他のモジュールをロードして使用するために使用され、モジュール名を渡し、モジュール エクスポート オブジェクトを返します。 。モジュール名には、相対パス (./ で始まる) または絶対パス (/ で始まる、または C: などのドライブ文字) を使用できます。また、モジュール名の拡張子 .js は省略できます。このとき、Node は同じ名前のフォルダーを探します。見つからない場合は、同じ名前の js ファイルを探します。この関数を使用して JSON ファイルをロードして使用することもできますが、.json 拡張子は省略できません。

exports

このオブジェクトは、現在のモジュールのエクスポート オブジェクトであり、モジュールのパブリック メソッドとプロパティをエクスポートするために使用されます。デフォルトは空のオブジェクト {} です。他のモジュールが require() 関数を通じて現在のモジュールを使用する場合、現在のモジュールのエクスポート オブジェクトを取得します。パブリック メソッドは、次のコードでエクスポートされます:

exports.hello = function() {
  console.log("Hello World!");
};

module

このオブジェクトは、現在のモジュールのメタデータとその他の関連情報を提供するために使用されますが、最も便利なのは、そのexports属性を使用してエクスポート オブジェクトを置き換えることです。現在のモジュールの。たとえば、モジュールのエクスポート オブジェクトはデフォルトでは通常のオブジェクトです。次のメソッドを使用して関数に変換できます:

module.exports = function() {
  console.log("Hello World!");
};

注: 上記のメソッドを使用すると、エクスポート オブジェクトへの変更はすべて無視されます。

モジュールの初期化

モジュール内のJSコードは、モジュールが初めて使用されるときに一度だけ実行され、モジュールのエクスポートされたオブジェクトは実行中に初期化されます。後で、キャッシュされたエクスポート オブジェクトが再利用されます。

test.jsでモジュールを定義する

//定义私有变量
var name = "";
function setName(n) {
  name = n;
}
function logName() {
  console.log(name);
}
//导出公有方法
exports.setName = setName;
exports.logName = logName;

mainにテストモジュールをロードする

//加载test模块
var test1 = require("./test.js"),
  test2 = require("./test.js");
//使用test1
test1.setName("Neo");
//使用test2
test2.logName(); //Neo

require()が何度呼び出されても、同じモジュールは1回しかロードされず、同じインスタンスは複数回参照することで得られます。

メインモジュール

プログラムを開始するためにコマンドラインパラメータを通じてノードに渡されるモジュールは、メインモジュールと呼ばれ、アプリケーション全体を構成する他のモジュールが連携して動作するようにスケジュールを設定します。たとえば、次のコマンド ラインでプログラムを開始すると、main.js がメイン モジュールになります:

$ node main.js

バイナリ モジュール

Node は、JS を使用してモジュールを作成できるだけでなく、C/C++ を使用したモジュールの作成もサポートします。バイナリ モジュールを書き込みます。 コンパイルされたバイナリ モジュール ファイル拡張子が .node であることを除いて、JS モジュールと同じように使用されます。バイナリ モジュールはオペレーティング システムが提供するすべての機能を使用できますが、プラットフォーム間で使用するのは困難です。

この記事の事例を読んだ後は、この方法を習得したと思います。さらに興味深い情報については、php 中国語 Web サイトの他の関連記事に注目してください。

推奨読書:

jsの数値配列の重複排除と最適化

Vueでbass.scssをグローバルに導入する手順の詳細な説明

以上がNodeモジュールモジュールの使い方の詳細説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。