在 Node.js 中,模块是指将代码组织成一个独立的单元,可以被其他代码引用和复用的机制。Node.js 使用 CommonJS 规范来实现模块化,每个文件就是一个模块,模块内部的变量和函数默认是私有的,只有通过 module.exports 或 exports 导出的部分才能被其他模块访问。
创建模块
要创建一个 Node.js 模块,只需要将相关代码放在一个文件中,并通过 module.exports 导出需要暴露的变量或函数。例如,我们创建一个名为 math.js 的模块来实现基本的数学运算:
// math.js
const add = (a, b) => a + b;
const subtract = (a, b) => a - b;
module.exports = {
add,
subtract
};导入模块
要在其他模块中使用已经创建的模块,可以使用 require 函数来导入。例如,我们创建一个 app.js 文件来使用 math.js 模块:
// app.js
const math = require('./math');
console.log(math.add(1, 2)); // 输出 3
console.log(math.subtract(5, 3)); // 输出 2在上面的例子中,我们使用相对路径 ./math 导入了 math.js 模块,并通过 math.add 和 math.subtract 来调用其中的函数。
内置模块
除了自定义模块外,Node.js 还提供了许多内置模块,可以直接使用而无需安装。例如,fs 模块用于文件系统操作,http 模块用于创建 HTTP 服务器等。
// 使用内置模块
const fs = require('fs');
const http = require('http');模块缓存
Node.js 会对已经加载过的模块进行缓存,这意味着多次引入同一个模块时,实际上只会加载一次。这样可以提高应用程序的性能和减少资源消耗。
以上就是关于 Node.js 模块系统的介绍,下一节我们将学习如何使用 npm 来管理模块。