🧭 Node.js 学习路线图(前端向)
🟢 初级:打基础(理解 Node 是干嘛的)
🎯 目标:能写简单命令行、读写文件、跑本地服务。
| 模块 |
💡知识点 |
✅ 示例 |
| 📦 Node 简介 |
事件驱动、非阻塞IO、运行机制 |
Node 跟浏览器 JS 有啥区别 |
| 📂 文件系统 fs |
fs.readFile、fs.writeFile、路径模块 path |
写日志、读 JSON 文件 |
| 🧰 模块化 |
CommonJS 规范:require / exports |
模块拆分与封装 |
| 🔁 npm 包管理 |
npm i、package.json、版本语义 |
安装 lodash、chalk |
| 🌐 创建服务 |
http.createServer() 基本使用 |
启动一个简单 Web 服务器 |
| 📣 console 调试 |
console.log/debug/time 等 |
性能分析 |
🟡 中级:进阶能力(操作系统级别 API + Web 服务)
🎯 目标:能搭建 Web 服务,掌握请求响应流程。
| 模块 |
🧠知识点 |
✅ 示例 |
| 🔥 Express 框架 |
路由、中间件、静态资源、请求体解析 |
登录接口、路由封装 |
| 🔗 路由系统 |
GET、POST、动态参数、Query |
RESTful 接口设计 |
| 📦 中间件机制 |
use()、next()、顺序执行 |
日志中间件、自定义拦截器 |
| 🧪 Postman 测试 |
搭配 Postman 调试 API |
模拟前端请求 |
| 🛠️ 跨域 CORS |
res.setHeader()、CORS 中间件 |
本地前后端联调 |
| 🗂 文件上传 |
multer、流式文件上传 |
上传头像、Excel 表 |
| 🗃 JSON & Buffer |
处理前后端数据格式 |
JSON.parse + Buffer |
🔵 高级:系统设计 + 异步编程 + 实战架构
🎯 目标:能构建小型后端项目,理解性能优化与工程实践。
| 模块 |
🚀知识点 |
✅ 示例 |
| 🧵 异步控制 |
Promise、async/await、事件监听器 |
定时任务 + 文件读写 |
| 🪝 事件机制 |
EventEmitter、发布订阅模式 |
日志系统、任务队列 |
| 🧠 MVC 架构 |
控制器、服务层、模型层 |
用户模块分层设计 |
| 🔒 JWT 鉴权 |
登录接口 + Token 保护接口 |
登录态验证、权限控制 |
| 🗄 MongoDB/Mongoose |
数据库连接、CRUD 操作 |
注册用户、存订单 |
| 🧰 ORM 工具 |
Sequelize(MySQL)、Mongoose(Mongo) |
表关联、分页查询 |
| 📆 定时任务 |
node-schedule、crontab |
自动清理任务、定点推送 |
| 📊 性能分析 |
process.memoryUsage、console.time |
发现性能瓶颈 |
🧱 拓展:部署 & 工程实践
| 模块 |
🛠 技能 |
| 📤 接口部署 |
搭配 pm2、nginx、阿里云服务器上线 |
| 🐞 错误处理 |
全局异常捕获、日志记录 |
| 🔐 安全防护 |
XSS、CSRF、SQL注入、Helmet |
| 📦 项目工程化 |
.env 配置、日志系统、项目目录规范 |
| 🧪 接口测试 |
Jest、Supertest、接口自动化测试 |
| 🛂 权限设计 |
RBAC(角色权限控制)、接口限流 |
🧠 知识结构图
Node.js 能力图谱
│
├─ 核心模块:fs / path / http / url
├─ 异步模型:Promise / async / EventEmitter
├─ Web框架:Express / Koa / NestJS(进阶)
├─ 数据存储:MongoDB / MySQL
├─ 工程实践:中间件 / 跨域 / JWT / 定时任务
├─ 安全与部署:Helmet / PM2 / Nginx / Docker
└─ 项目实战:接口设计 / 文件上传 / 日志系统 / 测试
🧩 推荐实战项目
| 类型 |
项目名称 |
技术点 |
| 👤 用户系统 |
登录注册、Token鉴权 |
Express + JWT + MongoDB |
| 📝 备忘录 API |
增删改查、分类 |
RESTful + Mongoose |
| 🧾 博客后台 |
富文本 + 文件上传 + 权限控制 |
multer + RBAC |
| 📅 日程提醒 |
node-schedule + 短信接口 |
定时推送 |