2016-12-15 8 views
0

のコード行がある:これは何をこの変数で2つのオブジェクトが参照されているのはなぜですか?ノードmodule.jsファイルで

exports = module.exports = { 
    makeRequireFunction, 
    stripBOM, 
    addBuiltinLibsToObject 
}; 

しているのですか?

exports = module.exports 

最終的には、輸出がこの新しいオブジェクトに設定されている:

= { 
    makeRequireFunction, 
    stripBOM, 
    addBuiltinLibsToObject 
}; 

はなぜ輸出=のmodule.exportsはが必要ですか?

+1

これはPythonの場合と同様に動作しますが、単純に同じ値を2つの変数( 'exports'と' module.exports')に1行で代入しています。 – elethan

答えて

0

ファイル内でさらにexports.[whatever]を引き続き使用するためのショートカットです。最終的には、 "エクスポート"されるのはmodule.exportsの内容です。

関連する問題