Node常用模块总结

自带模块


第三方模块 (for Node.js)

  • [mongoose]

  • [mysql]

  • redis

  • [sqlite3]

  • [ws]
    WebSocket for Node.js

  • [socket.io]
    可以说是对WebSocket的一个封装

  • [request]

  • busboy
    文件上传模块

  • html-minifier
    压缩html的node模块

  • moment
    时间格式化的模块,前后端都可以用

  • jsonwebtoken
    jwt模块,token,用于验证身份 官网

  • [co]

  • bluebird
    一个Promise模块

  • [ejs]

  • [heredoc]

  • [xml2js]

  • [lodash]

  • [raw-body]

  • [sha1]

  • [eggjs]
    阿里基于Koa封装的框架


Koa模块


其他工具

  • pm2
    线上部署的工具,可集群、自动监控/重启

  • Electron
    Node构建桌面应用

  • gm
    图片压缩模块

  • jxcore
    一个可以把node打包成二进制文件的东西。 菜鸟网教程

  • strapi
    API框架

  • Mocha
    Node.js 测试框架

<think>好的,我需要回答用户关于Node.js常用开发模块的问题。首先,我得回忆一下Node.js的核心模块常用第三方模块。用户可能想知道哪些模块在开发中最常用,以及它们的用途。 首先,核心模块Node.js自带的,比如`fs`、`path`、`http`这些,用户可能已经知道一些,但需要系统化的列表。然后是第三方模块,比如`express`、`lodash`、`axios`等,这些也非常重要。 接下来,我需要参考用户提供的引用内容。引用[1]提到Node.js的模块系统,说明模块的作用和分类。引用[2]是Node.js的基本介绍,可能不需要直接用到。引用[3]和[4]关于命令行和配置,可能对模块使用环境有帮助,但可能不是直接回答模块列表。 我需要确保每个模块的用途描述准确,并尽量提供例子。例如,`fs`模块用于文件操作,`path`处理路径,`http`创建服务器。第三方模块如`express`用于Web框架,`mongoose`连接MongoDB。 还要注意用户提到的格式要求:行内数学公式用$...$,独立公式用$$...$$,但这里可能用不上数学公式。需要结构清晰,分点列出,可能用表格或者分类的方式。 检查是否有遗漏的重要模块,比如`crypto`用于加密,`events`处理事件,`os`获取系统信息。第三方模块如`nodemon`、`dotenv`这些工具类模块也很常用。 最后,生成相关问题,可能需要考虑模块的选择、比较、使用方法等。确保引用正确,比如在提到模块系统时引用[^1]。 总结步骤:1. 分类核心模块和第三方模块;2. 列出每个模块的名称和用途;3. 确保引用正确;4. 生成相关问题。</think>### Node.js 常用开发模块列表及用途 #### 一、核心模块内置模块Node.js 内置的核心模块无需安装即可直接使用,常见模块及用途如下: 1. **`fs`(文件系统模块)** 用于文件读写、目录操作等。例如: ```javascript const fs = require('fs'); fs.readFile('file.txt', 'utf8', (err, data) => { /* ... */ }); ``` 2. **`path`(路径模块)** 处理文件路径的拼接、解析等,避免跨平台路径格式问题。例如: ```javascript const path = require('path'); const fullPath = path.join(__dirname, 'data', 'file.json'); ``` 3. **`http` / `https`(HTTP/HTTPS服务模块)** 创建 Web 服务器或客户端,处理 HTTP 请求与响应。例如: ```javascript const http = require('http'); http.createServer((req, res) => { res.end('Hello World'); }).listen(3000); ``` 4. **`crypto`(加密模块)** 提供哈希、加密、解密等功能,支持 MD5、SHA256、AES 等算法。例如: ```javascript const hash = crypto.createHash('sha256').update('data').digest('hex'); ``` 5. **`events`(事件模块)** 实现自定义事件驱动逻辑,支持发布-订阅模式。例如: ```javascript const EventEmitter = require('events'); class MyEmitter extends EventEmitter {} ``` 6. **`os`(操作系统模块)** 获取系统信息(CPU、内存、网络接口等)。例如: ```javascript const os = require('os'); console.log(os.platform()); // 输出操作系统类型 ``` --- #### 二、常用第三方模块 需通过 `npm install` 安装,常见模块及用途如下: 1. **`express`(Web 框架)** 快速构建 Web 应用和 API,提供路由、中间件支持。例如: ```javascript const express = require('express'); const app = express(); app.get('/', (req, res) => { res.send('Home Page'); }); ``` 2. **`mongoose`(MongoDB 驱动)** 连接 MongoDB 数据库并定义数据模型。例如: ```javascript mongoose.connect('mongodb://localhost/test'); const Schema = mongoose.Schema; ``` 3. **`axios`(HTTP 客户端)** 发起 HTTP 请求(GET/POST 等),支持 Promise。例如: ```javascript axios.get('https://api.example.com/data').then(response => { /* ... */ }); ``` 4. **`lodash`(工具库)** 提供高效的数据操作函数(如数组去重、对象合并)。例如: ```javascript const _ = require('lodash'); const uniqueArray = _.uniq([1, 2, 2, 3]); ``` 5. **`dotenv`(环境变量管理)** 从 `.env` 文件加载环境变量,常用于配置敏感信息。例如: ```javascript require('dotenv').config(); console.log(process.env.DB_PASSWORD); ``` 6. **`nodemon`(开发工具)** 监听文件变化自动重启服务,提升开发效率。通过命令行使用: ```bash npx nodemon app.js ``` --- #### 三、模块选择建议 - **Web 开发**:`express` + `mongoose` + `axios` - **工具类**:`lodash` + `crypto` - **系统操作**:`fs` + `path` + `os` - **工程化**:`dotenv` + `nodemon` ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值