コードのコメントの説明は非常に明確なので、これ以上ナンセンスなことはありません。コードを入力するだけです。
/*
※node内のスクリプトファイルはすべてモジュールファイルなので、1.jsもモジュールファイルであり、ファイルはコマンドラインウィンドウのnodeコマンドで直接実行されるため、モジュールファイルはnode内で定義されます。アプリケーション
* 現在のモジュールがメインモジュールであるかどうかを検出するには、次のメソッドを使用できます
* */
if(module===require.main){
console.log("現在のモジュールはメインモジュールです");
}
//出力結果: 現在のモジュールがメインモジュール
//2.js コード
var name="シシ博士";
console.log(名前);
エクスポート.name=名前;
//1.js コード:
var two=require("./2.js");
var two=require("./2.js");
//2回参照されていますが、console.log(name)の出力は1回しか実行されません。
/*require.resolve(str)
* ノードでは、この関数を使用してモジュール ファイルのファイル名を完全な絶対パスでクエリできます。
* */
var url=require.resolve("./2");
console.log(url);
//出力結果:E:nodegys2.js
/*require.cache
* ノードでは、この属性はロードされたすべてのモジュールのキャッシュ領域を表します。
* */
var two=require("./2.js");
var queue=require.cache;
console.log(キャッシュ);
/*出力結果:
* { 'E:\node\gys\1.js':
{ id: '.',
エクスポート: {}、
親: null、
ファイル名: 'E:\node\gys\1.js',
ロード済み: false、
子: [ [オブジェクト] ]、
パス:
[ 'E:\node\gys\node_modules',
'E:\node\node_modules',
'E:\node_modules' ] },
'E:\node\gys\2.js':
{ id: 'E:\node\gys\2.js',
エクスポート: { 名前: 'シシ博士' }、
親:
{ id: '.',
エクスポート: {}、
親: null、
ファイル名: 'E:\node\gys\1.js',
ロード済み: false、
子: [オブジェクト]、
パス: [オブジェクト] },
ファイル名: 'E:\node\gys\2.js',
ロード済み: true、
子供: []、
パス:
[ 'E:\node\gys\node_modules',
'E:\node\node_modules',
'E:\node_modules' ] } }
* */
//2.js コード
var name="シシ博士";
console.log(名前);
//1.js コード
//delete キーワードを使用してキャッシュ領域にキャッシュされたモジュール オブジェクトを削除すると、次回モジュールがロードされるときにモジュール内のコードが再実行されます。 使用法コード:
var two=require("./2.js");
var two1=require("./2.js");
console.log("削除前")
delete require.cache[require.resolve("./2.js")];
console.log("削除後");
var two2=require("./2.js");
/*
* 出力結果:
* シシ博士
※削除前
※削除後
* シシ博士
* */
node.js での require の使い方をご存知ですか? ご質問がございましたら、メッセージを残してください。