Node.js & module.exports & exports
https://www.cnblogs.com/xgqfrms/p/9493550.html
exports & module.exports
- Functions and objects are added to the root of a module by specifying additional properties on the special exports object.
module.exports & exports
CJS Modules
// CJS Modules
/*
exports.a = 1;
exports.b = 2;
exports.c = 3;
exports.d = 4;
// exports = { a: 1, b: 2, c: 3, d: 4 }
*/
exports.a = 1;
exports.b = 2;
module.exports = { c: 3 };
module.exports.d = 4;
// module.exports = { c: 3, d: 4 }
结论
exports
just shorthand ofmodule.exports
if exist both
exports
&module.exports
,module.exports
will be overwrittenexports
️best practice, just using
module.exports
as possible as you can
exports.a = 1;
exports.b = 2;
module.exports = { c: 3 };
module.exports.d = 4;
// module.exports = { c: 3, d: 4 }
console.log(module);
exports.a = 1;
exports.b = 2;
module.exports = { c: 3 };
module.exports.d = 4;
// module.exports = { c: 3, d: 4 }
module.exports.hello = true; // Exported from require of module
exports = { hello: false }; // Not exported, only available in the module
console.log(`hello =`, exports);
console.log(module);
https://www.hacksparrow.com/nodejs/exports-vs-module-exports.html
freecodecamp
https://www.freecodecamp.org/news/node-js-module-exports-vs-exports-ec7e254d63ac/
refs
https://www.w3schools.com/nodejs/nodejs_modules.asp
xgqfrms 2012-2020
www.cnblogs.com 发布文章使用:只允许注册用户才可以访问!