当前位置: 首页 > news >正文

node.js常用函数

以下是 Node.js 中常用的函数和方法,按照模块分类:

文章目录

    • 1. 全局对象和常用函数
      • 控制台输出
      • 定时器
      • 其他全局函数
    • 2. 文件系统 (fs)
    • 3. 路径处理 (path)
    • 4. HTTP 模块
    • 5. 工具类 (util)
    • 6. URL 处理
    • 7. 事件处理 (events)
    • 8. 流处理 (stream)
    • 9. 网络模块 (net)
    • 10. 操作系统信息 (os)
    • 11. 进程管理 (child_process)
    • 12. 加密模块 (crypto)
    • 13. 多线程 (worker_threads)
    • 14. 集群 (cluster)
    • 15. 断言测试 (assert)

1. 全局对象和常用函数

控制台输出

console.log()        // 标准输出
console.error()      // 错误输出
console.warn()       // 警告输出
console.info()       // 信息输出
console.debug()      // 调试输出
console.table()      // 表格形式输出
console.time()       // 启动计时器
console.timeEnd()    // 结束计时器并输出时间

定时器

setTimeout()         // 延迟执行
setInterval()        // 定时执行
setImmediate()       // 立即执行(在事件循环的下一次迭代中)
clearTimeout()       // 清除延迟执行
clearInterval()      // 清除定时执行
clearImmediate()     // 清除立即执行

其他全局函数

require()            // 引入模块
process.exit()       // 退出进程
process.cwd()        // 获取当前工作目录
process.argv         // 获取命令行参数
Buffer.from()        // 创建 Buffer 对象
__dirname            // 当前目录路径
__filename           // 当前文件路径

2. 文件系统 (fs)

const fs = require('fs');// 异步方法
fs.readFile()        // 读取文件
fs.writeFile()       // 写入文件
fs.appendFile()      // 追加文件内容
fs.unlink()          // 删除文件
fs.rename()          // 重命名文件
fs.stat()            // 获取文件信息
fs.readdir()         // 读取目录
fs.mkdir()           // 创建目录
fs.rmdir()           // 删除目录// 同步方法
fs.readFileSync()
fs.writeFileSync()
fs.existsSync()      // 检查文件/目录是否存在// Promise 版本 (Node.js 14+)
const fsPromises = require('fs').promises;
fsPromises.readFile()
fsPromises.writeFile()

3. 路径处理 (path)

const path = require('path');path.join()          // 连接路径
path.resolve()       // 解析绝对路径
path.dirname()       // 获取目录名
path.basename()      // 获取文件名
path.extname()       // 获取扩展名
path.parse()         // 解析路径
path.format()        // 格式化路径对象

4. HTTP 模块

const http = require('http');http.createServer()  // 创建 HTTP 服务器
http.request()       // 发起 HTTP 请求
http.get()           // 发起 GET 请求// 服务器常用方法
server.listen()      // 监听端口
server.close()       // 关闭服务器// 请求和响应对象方法
req.on('data')       // 接收数据
req.on('end')        // 数据接收完成
res.writeHead()      // 写入响应头
res.write()          // 写入响应体
res.end()            // 结束响应

5. 工具类 (util)

const util = require('util');util.promisify()     // 将回调函数转换为 Promise
util.format()        // 格式化字符串
util.inspect()       // 对象检查
util.isArray()       // 检查是否为数组
util.isObject()      // 检查是否为对象

6. URL 处理

const url = require('url');url.parse()          // 解析 URL
url.format()         // 格式化 URL 对象
url.resolve()        // 解析相对 URL// 新的 URL API (推荐)
const { URL } = require('url');
new URL()            // 创建 URL 对象

7. 事件处理 (events)

const EventEmitter = require('events');emitter.on()         // 注册事件监听器
emitter.once()       // 注册一次性事件监听器
emitter.emit()       // 触发事件
emitter.removeListener() // 移除事件监听器
emitter.removeAllListeners() // 移除所有事件监听器

8. 流处理 (stream)

const stream = require('stream');// 可读流
readable.on('data')  // 数据可读时触发
readable.on('end')   // 数据读取完成时触发
readable.pipe()      // 管道连接// 可写流
writable.write()     // 写入数据
writable.end()       // 结束写入
writable.on('finish') // 写入完成时触发

9. 网络模块 (net)

const net = require('net');net.createServer()   // 创建 TCP 服务器
net.connect()        // 创建 TCP 连接
net.createConnection() // 创建 TCP 连接(别名)// Socket 常用方法
socket.write()       // 发送数据
socket.end()         // 关闭连接
socket.on('data')    // 接收数据
socket.on('close')   // 连接关闭

10. 操作系统信息 (os)

const os = require('os');os.platform()        // 获取操作系统平台
os.arch()            // 获取 CPU 架构
os.type()            // 获取操作系统类型
os.uptime()          // 获取系统运行时间
os.totalmem()        // 获取总内存
os.freemem()         // 获取空闲内存
os.cpus()            // 获取 CPU 信息
os.networkInterfaces() // 获取网络接口信息

11. 进程管理 (child_process)

const { spawn, exec, execFile, fork } = require('child_process');spawn()              // 启动子进程
exec()               // 执行命令
execFile()           // 执行可执行文件
fork()               // 创建 Node.js 子进程// 子进程常用方法
child.stdout.on('data') // 监听标准输出
child.stderr.on('data') // 监听错误输出
child.on('close')       // 进程关闭事件

12. 加密模块 (crypto)

const crypto = require('crypto');crypto.createHash()  // 创建哈希对象
crypto.createHmac()  // 创建 HMAC 对象
crypto.createCipher() // 创建加密对象
crypto.createDecipher() // 创建解密对象
crypto.randomBytes() // 生成随机字节

13. 多线程 (worker_threads)

const { Worker, isMainThread, parentPort, workerData } = require('worker_threads');new Worker()         // 创建工作线程
parentPort.postMessage() // 发送消息
parentPort.on('message') // 接收消息

14. 集群 (cluster)

const cluster = require('cluster');cluster.fork()       // 创建工作进程
cluster.isMaster     // 是否为主进程
cluster.isWorker     // 是否为工作进程
cluster.on('exit')   // 监听进程退出

15. 断言测试 (assert)

const assert = require('assert');assert()             // 基本断言
assert.strictEqual() // 严格相等断言
assert.deepStrictEqual() // 深度严格相等断言
assert.throws()      // 断言抛出异常
assert.doesNotThrow() // 断言不抛出异常
http://www.lryc.cn/news/609330.html

相关文章:

  • GaussDB case when的用法
  • SpringBoot AI自动化测试实战案例
  • GitCode疑难问题诊疗
  • Linux命令基础(下)
  • 1.内核模块
  • 14.Redis 哨兵 Sentinel
  • 2. 字符设备驱动
  • IO流-对象流
  • 克罗均线策略思路
  • `npm error code CERT_HAS_EXPIRED‘ 问题
  • Java Stream API 编程实战
  • 2025年渗透测试面试题总结-2025年HW(护网面试) 77-1(题目+回答)
  • 《测试驱动的React开发:从单元验证到集成协同的深度实践》
  • 【2025ICCV-目标检测方向】WaveMamba:用于 RGB-红外目标检测的小波驱动曼巴融合
  • 百度招黑产溯源安全工程师
  • SQL注入SQLi-LABS 靶场less31-38详细通关攻略
  • Maxscript在选择的可编辑多边形每个面上绘制一个内部圆形
  • 【高等数学】第七章 微分方程——第十节 常系数线性微分方程组解法举例
  • [硬件电路-140]:模拟电路 - 信号处理电路 - 锁定放大器概述、工作原理、常见芯片、管脚定义
  • 类与对象(中),咕咕咕
  • Zama的使命
  • 零确认双花攻击
  • 8月3日星期日今日早报简报微语报早读
  • 《从原理到实践:MySQL索引优化与SQL性能调优全解析》
  • 【Redis学习路|第一篇】初步认识Redis
  • C的运算符与表达式
  • BP神经网络:当线性模型已到尽头,如何用“人造大脑”挖掘非线性预测规律?
  • 26李林880高数第二章 一元函数微分学及其应用
  • Kafka 是什么?
  • SpringBoot项目数据脱敏(自定义注解)