Not exactly. If just setting "exports" would not work, for example, exports = Rect, than in another file, assuming main.js, var Rect = require('Rect'), var rect = new Rect() will fail.
在 2013年10月15日星期二UTC+8下午8时33分15秒,greelgorke写道: > > module.exports and exports are referencing the same object. if you do > module.exports = foo, both point to different objects. if you want to > assign to module.exports and keep the shortcut exports correct do this > > module.exports = exports = foo > > simple reference handling, there is no magic behind. > > Am Dienstag, 15. Oktober 2013 12:22:29 UTC+2 schrieb yougen zhuang: >> >> Before assign value to exports, module.exports === exports, but after >> assign value, they're not equal. In my view, they're point to the same >> reference. >> BTW, if I modify to module.exports.Rect = Rect, then module.exports === >> exports >> >> function Rect(w,h) { >> this.w = w; >> this.h = h; >> }; >> >> Rect.prototype.area = function(){ >> return this.w*this.h; >> }; >> >> console.log(module.exports === exports);//true >> module.exports = Rect; >> console.log(module.exports); >> console.log(exports); >> console.log(module.exports === exports);//false >> >> >> -- -- Job Board: http://jobs.nodejs.org/ Posting guidelines: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines You received this message because you are subscribed to the Google Groups "nodejs" group. To post to this group, send email to nodejs@googlegroups.com To unsubscribe from this group, send email to nodejs+unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/nodejs?hl=en?hl=en --- You received this message because you are subscribed to the Google Groups "nodejs" group. To unsubscribe from this group and stop receiving emails from it, send an email to nodejs+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.