module.exports
module.exports・・・
JavaScript(Node.js)において、
あるファイルに存在する変数や関数を、別のファイルで実行する機能となります。
早速サンプルを書いてみます。
math.jsで宣言した変数をapp.jsで実行してみます。
(※厳密には変数ではなく定数です)
・app.js
・math.js
このように記述ができます。
module.exportsのやり方としては、実行する側のファイルで「require」します。(今回はapp.js)
前回も記述しましたが、Node.jsでは「require」を利用することで、モジュールを読み込むことが可能です。
math.jsを確認します。
先ほど「あるファイルに存在する変数や関数を、別のファイルで実行する」とありますが、ここで使用するのが「module.exports」です。
module.exportsはデフォルトで「空のオブジェクト」が入っています。
※exportsを使うと、指定した値を外部のNode.jsファイルから読み込んで再利用が可能
module.exportsを記述することで、主となるファイルで読み込まれ、出力されます。
また、module.exportsはmodule部分を省力することができます。
上記で、「require」しても結果は同じになります。
ただし、注意点としてはexports自身を関係ない値にしてしまうとエラーになります。
exports には module.exports が自動的に入っています。
そのため、exports自身を変更してしまうと意図したものと違う動作になります。