Node.js 模块本质上是一组可以包含在应用程序中的 JavaScript 函数或对象。节点模块使您能够将代码分解为更小的、可重用的部分。
它们内置于 Node.js 中并提供基本功能,例如 fs(文件系统)、http(HTTP 服务器/客户端)、路径、url 等。您可以使用 require(
这是开发人员在其项目中最常用的核心模块。
Node.js 中的路径模块提供了用于处理文件和目录路径的实用程序。以下是路径模块中最常用的一些方法。
将多个路径段组合成单个路径。它规范化结果路径,处理冗余斜杠或相对路径
const path = require('path'); const filePath = path.join('/users', 'john', 'documents', 'file.txt'); console.log(filePath); // Output: /users/john/documents/file.txt
从当前工作目录开始,将一系列路径或路径段解析为绝对路径。
const absolutePath = path.resolve('documents', 'file.txt'); console.log(absolutePath); // Output: /your/current/working/directory/documents/file.txt
返回路径的最后一部分,通常是文件名。您还可以指定要从结果中删除的扩展名。
const fullPath = '/users/john/file.txt'; console.log(path.basename(fullPath)); // Output: file.txt console.log(path.basename(fullPath, '.txt')); // Output: file
返回路径的目录部分。
const filePath = '/users/john/documents/file.txt'; console.log(path.dirname(filePath)); // Output: /users/john/documents
返回路径中文件的扩展名,包括点(.)。
const filePath = '/users/john/documents/file.txt'; console.log(path.dirname(filePath)); // Output: /users/john/documents
返回一个对象,其属性代表路径的不同部分
const parsedPath = path.parse('/users/john/file.txt'); console.log(parsedPath); /* Output: { root: '/', dir: '/users/john', base: 'file.txt', ext: '.txt', name: 'file' } */
检查路径是否是绝对路径,这意味着它从根目录开始(UNIX 上的 / 或 Windows 上的 C:)。
console.log(path.isAbsolute('/users/john')); // Output: true console.log(path.isAbsolute('file.txt')); // Output: false
还有更多方法可以查看path模块的官方文档
Node.js 中的 fs(文件系统)模块允许您与文件系统交互以读取、写入和操作文件和目录。下面是fs模块中最常用的一些方法
异步和同步读取文件内容。
const fs = require('fs'); fs.readFile('example.txt', 'utf8', (err, data) => { if (err) throw err; console.log(data); }); const data = fs.readFileSync('example.txt', 'utf8'); console.log(data);
异步和同步将数据写入文件。
fs.writeFile('example.txt', 'Hello, World!', (err) => { if (err) throw err; console.log('File written successfully'); }); fs.writeFileSync('example.txt', 'Hello, World!'); console.log('File written successfully');
以异步和同步方式将数据附加到文件。
fs.appendFile('example.txt', 'Hello, World!', (err) => { if (err) throw err; console.log('File written successfully'); }); fs.appendFileSync('example.txt', 'Hello, World!'); console.log('File written successfully');
异步和同步重命名或移动文件。
const path = require('path'); const filePath = path.join('/users', 'john', 'documents', 'file.txt'); console.log(filePath); // Output: /users/john/documents/file.txt
异步和同步删除文件。
const absolutePath = path.resolve('documents', 'file.txt'); console.log(absolutePath); // Output: /your/current/working/directory/documents/file.txt
异步和同步创建新目录。
const fullPath = '/users/john/file.txt'; console.log(path.basename(fullPath)); // Output: file.txt console.log(path.basename(fullPath, '.txt')); // Output: file
检查文件或目录是否同步存在。
const filePath = '/users/john/documents/file.txt'; console.log(path.dirname(filePath)); // Output: /users/john/documents
将文件从一个位置异步复制到另一个位置。
const filePath = '/users/john/documents/file.txt'; console.log(path.dirname(filePath)); // Output: /users/john/documents
还有更多方法可以查看fs模块的官方文档
Node.js 中的事件模块对于实现事件驱动编程至关重要。它允许您创建、监听和管理自定义事件。该模块中最常用的类是EventEmitter,它提供了处理事件的各种方法。以下是一些最常用的方法:
为特定事件注册监听器(回调函数)。可以为单个事件注册多个监听器。
发出特定事件,触发为该事件注册的所有侦听器。您可以将参数传递给侦听器。
const parsedPath = path.parse('/users/john/file.txt'); console.log(parsedPath); /* Output: { root: '/', dir: '/users/john', base: 'file.txt', ext: '.txt', name: 'file' } */
为仅被调用一次的事件注册一个监听器。事件发出后,监听器会自动移除。
console.log(path.isAbsolute('/users/john')); // Output: true console.log(path.isAbsolute('file.txt')); // Output: false
删除特定事件或所有事件(如果未指定事件)的所有侦听器。
const fs = require('fs'); fs.readFile('example.txt', 'utf8', (err, data) => { if (err) throw err; console.log(data); }); const data = fs.readFileSync('example.txt', 'utf8'); console.log(data);
还有更多方法可以查看事件模块的官方文档
Node.js 中的 url 模块提供了用于 URL 解析、格式化和解析的实用程序。该模块对于处理和操作 Web 应用程序中的 URL 字符串非常有用。
创建一个新的 URL 对象,该对象解析给定的 URL 并提供对其组件的访问。
创建一个新的 URL 对象,该对象解析给定的 URL 并提供对其组件的访问。
fs.writeFile('example.txt', 'Hello, World!', (err) => { if (err) throw err; console.log('File written successfully'); }); fs.writeFileSync('example.txt', 'Hello, World!'); console.log('File written successfully');
将 URL 对象转换为字符串表示形式。将 URL 序列化为 JSON 字符串
fs.appendFile('example.txt', 'Hello, World!', (err) => { if (err) throw err; console.log('File written successfully'); }); fs.appendFileSync('example.txt', 'Hello, World!'); console.log('File written successfully');
获取或设置 URL 的主机名部分(不带端口)。获取或设置 URL 的端口部分。
fs.rename('example.txt', 'renamed.txt', (err) => { if (err) throw err; console.log('File renamed successfully'); }); fs.renameSync('example.txt', 'renamed.txt'); console.log('File renamed successfully');
还有更多方法可以查看url模块的官方文档
Node.js 中的 http 模块提供了创建和处理 HTTP 请求和响应的功能。以下是http模块中最常用的一些方法:
创建一个侦听传入请求的 HTTP 服务器。此方法返回 http.Server.
的实例启动 HTTP 服务器并侦听指定端口和主机上的请求。
停止服务器接受新连接并关闭现有连接。
const path = require('path'); const filePath = path.join('/users', 'john', 'documents', 'file.txt'); console.log(filePath); // Output: /users/john/documents/file.txt
还有更多方法可以查看http模块的官方文档
以上是ost 使用的 Node.js 核心模块的详细内容。更多信息请关注PHP中文网其他相关文章!