Quantcast
Channel: Node.jsタグが付けられた新着記事 - Qiita
Viewing all articles
Browse latest Browse all 8691

【Node.js】requireによるexportsオブジェクトの参照について

$
0
0

※当方駆け出しエンジニアのため、間違っていることも多々あると思いますので、ご了承ください。また、間違いに気付いた方はご一報いただけると幸いです。

あるファイルから、あるファイルをrequireメソッドで呼び出した場合、requireメソッドで呼び出されたファイルのexportsオブジェクトが返される。
どういうことかと言うと、今下のような2つのファイルがある。

main.js
constsub=require("/sub");sub.name("Taro");sub.age("20");
sub.js
exports.name=(name)=>{console.log(name);};exports.age=(age)=>{console.log(age);};

sub.jsを見てみると、

exportオブジェクトのプロパティnameとageに関数が格納されている。
オブジェクトリテラルで表現すると下記のような状態。

exports={name:function(name){console.log(name),name:function(age){console.log(age)};

main.jsでsub.jsをrequireしている。requireすると、requireされたファイルのexportsオブジェクトが返る。
つまり、

main.js
constsub=require("/sub");// ↑ この式は ↓ こういうことconstsub={name:function(name){console.log(name),name:function(age){console.log(age)};

よって

main.js
sub.name("Taro");sub.age("20");//の結果は//Taro//20

Viewing all articles
Browse latest Browse all 8691

Trending Articles