Node.jsのrequireの挙動を調べてみた
1029 ワード
皆が使ってるし~という事で実行しがちなOMAJINAI WORDのrequire。
requireの挙動ってどうなってるんだろうと思ったので、公式ドキュメントやらブログで探してみました。
そもそもrequireとは
requireはもともとcommonJSにある組み込み関数です。
console.log同様、もともと使える関数なので、準備などは不要です!(めちゃ便利)
1. 別のディレクトリにあるjsファイルのモジュールを使いたい時
exports.sum = function(x, y) {
return x + y;
}
exports.minus = function(x, y) {
return x - y;
}
const calculation = require('./calculation.js') //ファイル名を指定
console.log(calculation.sum(1, 2));
console.log(calculation.minus(5, 4));
2. npm installしたNPMモジュールを使いたい時
const http = require('http'); //モジュール名を指定
require時の挙動
requireで指定されたJavaScriptファイルを読み込み、そのファイルを実行してexportsオブジェクトを返却します。この「ファイル読み込み・実行・exportsオブジェクトの返却」という流れは最初の一回のみで、その後はキャッシュされるような仕組みになっています。
Author And Source
この問題について(Node.jsのrequireの挙動を調べてみた), 我々は、より多くの情報をここで見つけました https://zenn.dev/yuyuco/articles/b117f8d1c37f98著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Collection and Share based on the CC protocol