在 Node.js 中,每个文件都是一个模块,你可以通过 module.exports 把这个模块中的内容(变量、函数、对象等)导出,以便在其他文件中使用。
module.exports = {
myapp: {
myweb: "http://localhost:8080"
}
};
这表示你导出了一个对象,对象里面有一个字段 myapp,它又包含一个字段 myweb。
config.js
module.exports = {
myapp: {
myweb: "http://localhost:8080"
}
};
hello.js
const config = require('./config'); // 引入 config.js 的导出内容
console.log(config.myapp.myweb); // 输出: http://localhost:8080
✅ 背后原理(简略)
Node.js 内部每个文件都有一个隐藏的包裹结构:
(function (exports, require, module, __filename, __dirname) {
// 你写的代码其实是这样被包装的
})
所以 module.exports = ... 就是告诉 Node:
“我要导出这个东西,让其他模块可以
require()它。”
📌 对比 exports.xxx = xxx
exports.myapp = { myweb: "http://localhost:8080" };
这也是合法的写法,但注意:
-
exports是module.exports的引用 -
如果你直接对
module.exports赋值(如对象、函数),exports就会失效
👉 推荐用 module.exports = {...} 方式,更明确、更安全。

225

被折叠的 条评论
为什么被折叠?



