第一部分:Node.js 简介与安装前准备
1.1 Node.js 是什么?
Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境,它让开发者能够使用 JavaScript 编写服务器端应用程序。Node.js 的出现彻底改变了 JavaScript 只能运行在浏览器中的局面,使其成为一门全栈开发语言。
主要特点:
-
事件驱动、非阻塞 I/O 模型
-
轻量且高效
-
单线程但支持高并发
-
拥有庞大的包生态系统(npm)
1.2 为什么选择 Node.js?
-
前后端统一语言:使用相同的编程语言开发前端和后端
-
高性能:基于 V8 引擎,执行速度快
-
丰富的生态系统:npm 拥有超过 100 万个包
-
活跃的社区:拥有庞大的开发者社区支持
-
企业级应用:被 ***flix、PayPal、LinkedIn 等大型公司使用
1.3 系统要求检查
在安装 Node.js 之前,请确保您的 Windows 系统满足以下要求:
最低系统要求:
-
操作系统:Windows 8.1、Windows 10、Windows 11 或 Windows Server 2012 R2 及以上
-
处理器:1 GHz 或更快的处理器
-
内存:至少 512 MB RAM(推荐 1 GB 或更多)
-
硬盘空间:至少 200 MB 可用空间
检查您的 Windows 版本:
-
按下
Win + R键 -
输入
winver并按回车 -
查看弹出的窗口中的版本信息
第二部分:下载 Node.js 安装包
2.1 访问官方网站
-
打开您的网页浏览器(推荐 Chrome、Firefox 或 Edge)
-
访问 Node.js 官方网站:https://nodejs.org/
-
您将看到两个主要版本选项:
LTS 版本(推荐)
-
长期支持版本
-
更稳定,适合生产环境
-
有长期的安全更新和维护
Current 版本
-
最新功能版本
-
包含最新的特性和改进
-
可能不够稳定,适合测试和开发
2.2 选择合适的版本
对于大多数用户,我们推荐选择 LTS 版本。点击 "LTS" 按钮下载安装包。
版本号说明:
-
格式:主版本.次版本.修订版本(例如:18.12.1)
-
偶数主版本号为 LTS 版本(如 14.x, 16.x, 18.x)
-
奇数主版本号为当前版本(如 15.x, 17.x, 19.x)
2.3 下载选项
Node.js 为 Windows 提供多种安装包格式:
-
MSI 安装程序(推荐)
-
扩展名:.msi
-
优点:图形化安装界面,自动配置环境变量
-
下载文件示例:node-v18.12.1-x64.msi
-
-
可执行文件
-
扩展名:.exe
-
需要手动配置环境变量
-
-
压缩包
-
扩展名:.zip 或 .7z
-
适合高级用户,需要手动安装和配置
-
第三部分:安装 Node.js
3.1 启动安装程序
-
找到下载的 .msi 文件(通常在 "下载" 文件夹中)
-
双击文件启动安装程序
-
如果出现用户账户控制(UAC)提示,点击 "是" 继续
3.2 安装向导步骤
步骤 1:欢迎界面
-
阅读欢迎信息
-
点击 "Next" 继续
步骤 2:许可协议
-
仔细阅读最终用户许可协议
-
勾选 "I a***ept the terms in the License Agreement"
-
点击 "Next" 继续
步骤 3:选择安装位置
-
默认安装路径:
C:\Program Files\nodejs\ -
如需更改安装位置,点击 "Change" 按钮
-
建议使用默认路径,除非有特殊需求
-
点击 "Next" 继续
步骤 4:自定义安装选项
这是最重要的步骤,让我们详细了解每个选项:
Node.js runtime
-
必选项,包含 Node.js 运行环境
-
建议:保持选中
npm package manager
-
Node.js 的包管理器
-
用于安装和管理 JavaScript 包
-
建议:保持选中
Online documentation shortcuts
-
创建在线文档的快捷方式
-
可选,根据个人需求选择
Add to PATH
-
重要:将 Node.js 添加到系统 PATH 环境变量
-
这允许在任意命令提示符窗口中使用 node 和 npm 命令
-
强烈建议:保持选中
步骤 5:自动安装必要工具
-
这个选项会安装编译本地模块所需的工具
-
包括 Python、Visual Studio Build Tools 等
-
对于初学者,可以取消选中此项
-
如果需要编译 C++ 插件,建议安装
步骤 6:准备安装
-
确认安装设置
-
点击 "Install" 开始安装
3.3 安装过程
-
安装程序将开始复制文件
-
显示安装进度条
-
如果选择了安装必要工具,可能会额外下载约 1GB 的文件
-
安装时间取决于系统性能和网络速度(通常 2-10 分钟)
3.4 完成安装
-
看到 "***pleted the Node.js Setup Wizard" 表示安装成功
-
点击 "Finish" 退出安装程序
第四部分:验证安装
4.1 检查 Node.js 安装
-
打开命令提示符:
-
按下
Win + R键 -
输入
cmd并按回车 -
或者搜索 "命令提示符" 并打开
-
-
验证 Node.js 版本:
bash
node --version
或
bash
node -v
应该显示类似:
v18.12.1 -
验证 npm 版本:
bash
npm --version
或
bash
npm -v
应该显示类似:
8.19.2
4.2 测试简单的 JavaScript 代码
-
打开命令提示符
-
输入
node并按回车,进入 Node.js REPL(交互式解释器) -
输入以下代码测试:
javascript
console.log("Hello, Node.js!"); -
按回车,应该看到输出:
Hello, Node.js! -
按
Ctrl + C两次退出 REPL
4.3 创建并运行第一个 Node.js 脚本
-
创建一个新文件夹,例如
C:\nodejs-projects\ -
在该文件夹中创建文件
hello.js -
用文本编辑器打开并输入以下内容:
javascript
// hello.js const message = "欢迎来到 Node.js 世界!"; console.log(message); // 显示当前日期和时间 const currentDate = new Date(); console.log(`当前时间:${currentDate.toLocaleString()}`); // 简单的计算 const a = 5, b = 3; console.log(`${a} + ${b} = ${a + b}`); -
保存文件
-
在命令提示符中,导航到文件所在目录:
bash
cd C:\nodejs-projects
-
运行脚本:
bash
node hello.js
-
应该看到类似输出:
text
欢迎来到 Node.js 世界! 当前时间:2023/11/15 14:30:25 5 + 3 = 8
第五部分:配置开发环境
5.1 选择合适的代码编辑器
推荐编辑器:
-
Visual Studio Code(强烈推荐)
-
免费、开源
-
优秀的 Node.js 支持
-
丰富的扩展生态系统
-
-
WebStorm
-
付费软件,功能强大
-
专业的 JavaScript IDE
-
-
Sublime Text
-
轻量级,快速
-
需要安装插件获得完整功能
-
5.2 安装 Visual Studio Code
-
访问:https://code.visualstudio.***/
-
下载 Windows 版本
-
运行安装程序
-
选择以下组件:
-
将"通过 Code 打开"操作添加到 Windows 资源管理器文件上下文菜单
-
将"通过 Code 打开"操作添加到 Windows 资源管理器目录上下文菜单
-
将 Code 注册为受支持的文件类型的编辑器
-
添加到 PATH
-
5.3 配置 VS Code 扩展
安装以下有用的扩展:
-
JavaScript (ES6) code snippets
-
npm
-
npm Intellisense
-
Path Intellisense
-
ESLint
-
Prettier - Code formatter
-
Bracket Pair Colorizer
-
Auto Rename Tag
5.4 配置终端
-
在 VS Code 中打开终端:
查看 > 终端或 `Ctrl + `` -
确保终端使用 PowerShell 或命令提示符
-
测试 Node.js 命令是否正常工作
第六部分:npm 包管理器详解
6.1 npm 基础概念
npm(Node Package Manager)是 Node.js 的包管理器,世界上最大的软件注册表。
主要功能:
-
安装和管理依赖包
-
发布自己的包
-
运行脚本
-
版本管理
6.2 常用 npm 命令
bash
# 初始化新项目 npm init npm init -y # 快速初始化,使用默认配置 # 安装包 npm install package-name # 安装到 dependencies npm install package-name --save-dev # 安装到 devDependencies npm install package-name -g # 全局安装 # 卸载包 npm uninstall package-name # 更新包 npm update package-name npm update -g # 更新全局包 # 查看已安装的包 npm list npm list -g # 查看全局包 npm list --depth=0 # 查看顶层包 # 查看包信息 npm view package-name npm info package-name # 运行脚本 npm run script-name # 审计安全性 npm audit npm audit fix
6.3 package.json 文件详解
package.json 是 Node.js 项目的核心配置文件:
json
{
"name": "my-project",
"version": "1.0.0",
"description": "我的 Node.js 项目",
"main": "index.js",
"scripts": {
"start": "node index.js",
"dev": "nodemon index.js",
"test": "jest"
},
"keywords": ["nodejs", "javascript"],
"author": "你的名字",
"license": "MIT",
"dependencies": {
"express": "^4.18.2",
"lodash": "^4.17.21"
},
"devDependencies": {
"nodemon": "^2.0.20",
"jest": "^29.3.1"
},
"engines": {
"node": ">=18.0.0"
}
}
6.4 依赖类型说明
dependencies
-
生产环境依赖
-
使用
npm install package-name --save安装
devDependencies
-
开发环境依赖
-
使用
npm install package-name --save-dev安装
peerDependencies
-
对等依赖,表明包与宿主环境的关系
optionalDependencies
-
可选依赖,安装失败不会影响主要功能
第七部分:高级配置和优化
7.1 配置 npm 镜像源
由于网络原因,有时需要配置国内镜像源:
使用淘宝 npm 镜像:
bash
# 设置淘宝镜像 npm config set registry https://registry.npmmirror.***/ # 恢复官方镜像 npm config set registry https://registry.npmjs.org/ # 查看当前配置 npm config list # 查看镜像地址 npm config get registry
使用 nrm 管理镜像源:
bash
# 安装 nrm npm install -g nrm # 列出可用的镜像源 nrm ls # 使用淘宝镜像 nrm use taobao # 测试镜像速度 nrm test
7.2 配置全局安装路径
默认情况下,全局包安装在 %APPDATA%\npm,可以自定义路径:
bash
# 创建全局安装目录 mkdir C:\NodeJS\global_modules mkdir C:\NodeJS\global_cache # 配置 npm npm config set prefix "C:\NodeJS\global_modules" npm config set cache "C:\NodeJS\global_cache" # 将路径添加到系统 PATH # 1. 右键"此电脑" > "属性" > "高级系统设置" # 2. 点击"环境变量" # 3. 在"系统变量"中找到"Path",点击"编辑" # 4. 添加新路径:C:\NodeJS\global_modules
7.3 环境变量配置
确保以下路径在系统 PATH 中:
-
C:\Program Files\nodejs\(Node.js 安装目录) -
C:\Users\你的用户名\AppData\Roaming\npm(全局包目录,如果使用默认设置)
检查环境变量:
bash
echo %PATH%
第八部分:常见问题解决
8.1 安装问题
问题 1:权限错误
text
Error: EPERM: operation not permitted
解决方案:
-
以管理员身份运行命令提示符
-
或配置自定义全局安装路径
问题 2:Node.js 命令未找到
text
'node' 不是内部或外部命令,也不是可运行的程序
解决方案:
-
检查 Node.js 是否安装成功
-
确认安装路径已添加到系统 PATH
-
重启命令提示符或计算机
8.2 npm 相关问题
问题 3:npm 安装超时
text
npm ERR! ***work timeout
解决方案:
-
检查网络连接
-
配置国内镜像源
-
增加超时时间:
npm config set timeout 60000
问题 4:权限被拒绝
text
npm ERR! Error: EA***ES: permission denied
解决方案:
-
在 Windows 上,以管理员身份运行命令提示符
-
或使用
npm cache clean --force清理缓存
8.3 版本管理问题
问题 5:需要特定 Node.js 版本
解决方案: 使用 nvm-windows(Node Version Manager for Windows)
bash
# 安装 nvm-windows # 下载地址:https://github.***/coreybutler/nvm-windows/releases # 安装特定版本 nvm install 18.12.1 # 使用特定版本 nvm use 18.12.1 # 列出已安装版本 nvm list # 设置默认版本 nvm alias default 18.12.1
第九部分:开发工具和最佳实践
9.1 推荐开发工具
调试工具:
-
VS Code 内置调试器
-
Chrome DevTools(通过
--inspect参数)
进程管理:
-
nodemon:自动重启应用
bash
npm install -g nodemon nodemon app.js
-
pm2:生产环境进程管理
bash
npm install -g pm2 pm2 start app.js pm2 monit
测试框架:
-
Jest:JavaScript 测试框架
-
Mocha:功能丰富的测试框架
-
Chai:断言库
9.2 项目结构最佳实践
text
my-project/ ├── src/ # 源代码目录 │ ├── controllers/ # 控制器 │ ├── models/ # 数据模型 │ ├── routes/ # 路由 │ ├── middleware/ # 中间件 │ └── utils/ # 工具函数 ├── tests/ # 测试文件 ├── public/ # 静态资源 ├── node_modules/ # 依赖包(自动生成) ├── package.json # 项目配置 ├── package-lock.json # 依赖锁文件 ├── .gitignore # Git 忽略文件 ├── README.md # 项目说明 └── app.js # 应用入口文件
9.3 代码质量工具
ESLint - 代码检查工具:
bash
npm install eslint --save-dev npx eslint --init
Prettier - 代码格式化工具:
bash
npm install prettier --save-dev
Husky - Git 钩子工具:
bash
npm install husky --save-dev npx husky install
第十部分:创建完整的示例项目
10.1 初始化项目
bash
# 创建项目目录 mkdir my-express-app cd my-express-app # 初始化 package.json npm init -y # 安装 Express 框架 npm install express # 安装开发依赖 npm install nodemon --save-dev
10.2 创建基础应用
创建 app.js 文件:
javascript
const express = require('express');
const app = express();
const port = 3000;
// 中间件
app.use(express.json());
app.use(express.static('public'));
// 路由
app.get('/', (req, res) => {
res.json({
message: '欢迎来到 Express 服务器!',
timestamp: new Date().toISOString(),
nodeVersion: process.version
});
});
app.get('/api/users', (req, res) => {
const users = [
{ id: 1, name: '张三', email: 'zhangsan@example.***' },
{ id: 2, name: '李四', email: 'lisi@example.***' },
{ id: 3, name: '王五', email: 'wangwu@example.***' }
];
res.json(users);
});
app.post('/api/users', (req, res) => {
const { name, email } = req.body;
const newUser = {
id: Date.now(),
name,
email,
createdAt: new Date().toISOString()
};
res.status(201).json(newUser);
});
// 错误处理中间件
app.use((err, req, res, next) => {
console.error(err.stack);
res.status(500).json({ error: '服务器内部错误!' });
});
// 404 处理
app.use((req, res) => {
res.status(404).json({ error: '路由未找到!' });
});
// 启动服务器
app.listen(port, () => {
console.log(`服务器运行在 http://localhost:${port}`);
console.log(`Node.js 版本: ${process.version}`);
});
10.3 配置 package.json 脚本
修改 package.json 的 scripts 部分:
json
{
"scripts": {
"start": "node app.js",
"dev": "nodemon app.js",
"test": "echo \"Error: no test specified\" && exit 1"
}
}
10.4 运行项目
bash
# 开发模式(使用 nodemon) npm run dev # 生产模式 npm start
访问 http://localhost:3000 查看应用运行情况。
总结
通过本详细指南,您已经完成了:
-
✅ 了解了 Node.js 的基本概念和优势
-
✅ 下载了合适的 Node.js 版本
-
✅ 完成了完整的安装和配置过程
-
✅ 验证了安装结果
-
✅ 配置了开发环境和工具
-
✅ 学习了 npm 包管理器的使用
-
✅ 掌握了常见问题的解决方法
-
✅ 了解了最佳实践和项目结构
-
✅ 创建了完整的示例项目
Node.js 生态系统庞大而活跃,继续学习的方向包括:
-
深入学习 Express、Koa 等 Web 框架
-
学习数据库集成(MongoDB、MySQL、PostgreSQL)
-
掌握 RESTful API 设计
-
学习身份认证和授权
-
了解部署和 DevOps 实践