4

NodeJSで「これ」が空のオブジェクトであるのはなぜですか?「module.exports」はどこに属しますか?

"module.exports..."と書けると思いました"this.module.exports..."が、うまくいきません。

ありがとうございました

4

1 に答える 1

17

実際のモジュールを使用している場合:

  • module現在のモジュールへの参照です

  • exportsエクスポートされたデータへの参照です。NodeJSによってキャッシュされ、他のモジュールに配信されますrequire

  • thisexportsオブジェクトへの代替参照です

  • module.exportsexportsオブジェクトへの代替参照です

  • this.moduleundefined

thisexports上記のように、開発者が入力する、と同じオブジェクトへの参照であるため、は空です。

this.moduleがへの参照である場合modulethisはへの参照であるため、他のエクスポートされたアイテムと一緒にそれ自体をエクスポートexportsします。moduleこれが望ましいとは思えません。


REPLにいる場合は、this.moduleが定義されます。

于 2012-10-01T23:45:21.127 に答える