跟着我,用Node.js敲开服务器大门
它到底是什么
Node.js 是让 JavaScript 脱离浏览器、直接在电脑上运行的环境。它基于 Chrome 的 V8 引擎,并扩展了文件、网络等操作能力,使前端语言变身全栈利器。其核心是“事件驱动、非阻塞 I/O”:像高效服务员,点完单立刻服务下一桌,菜好了再端上,处理高并发时特别省资源。
把环境搭起来
去 nodejs.org 下载安装包,无脑选 LTS 长期支持版,更稳定。装完后打开命令行,输入:
node -v
npm -v
显示版本号即表示环境就绪。这两个命令是一切操作的基础。
先跑个“Hello World”
建一个文件夹,创建 hello.js,写入:
console.log("你好,Node.js 世界!");
终端进入该目录,执行 node hello.js,即刻看到输出。这一步验证了工具链,并让你熟悉“写码-执行”的核心流程。
核心概念:模块系统
Node.js 用模块组织代码,每个文件是一个模块,通过 require 和 module.exports 拼装。例如:
math.js
function add(a, b) { return a + b; }
module.exports = { add };
app.js
const myMath = require('./math.js');
console.log(myMath.add(2, 3)); // 5
./ 表示当前目录,省略路径则引用内置模块。这种分治思想是构建大型应用的基础。
实战:第一个服务器
创建 server.js:
const http = require('http');
const server = http.createServer((req, res) => {
res.writeHead(200, { 'Content-Type': 'text/plain; charset=utf-8' });
if (req.url === '/') {
res.end('欢迎来到首页!');
} else if (req.url === '/about') {
res.end('这是关于页面。');
} else {
res.end('404 - 页面没找到');
}
});
server.listen(3000, () => {
console.log('服务器跑在 http://localhost:3000');
});
运行 node server.js,浏览器访问对应地址即可看到效果。这个小程序包含了请求处理、路由分发和响应返回,是 Web 后端的骨架。
让程序自动重启
每次改代码都要手动重启很麻烦。全局安装 nodemon:
npm install -g nodemon
之后用 nodemon server.js 启动,文件变动时服务会自动重启,大幅提升开发体验。
包管理器 npm
npm 是 Node.js 生态的基石,提供海量第三方模块。在项目目录下初始化:
npm init -y
这会生成 package.json。安装日期库 dayjs 试试:
npm install dayjs
创建 date.js 使用它:
const dayjs = require('dayjs');
console.log(dayjs().format('YYYY-MM-DD HH:mm:ss'));
node_modules 存放下载的代码,务必用 .gitignore 忽略它。
避坑要点
- 端口占用:报错
EADDRINUSE时,换一个端口号如 8080。 - 代码不更新:浏览器缓存,按
Ctrl + F5强制刷新,或用nodemon。 - 模块找不到:检查
require路径、文件名大小写。 - 异步风格:操作文件或网络时,Node.js 用回调或 Promise 处理结果,这是核心风格。
学习路线
- 文件操作:学习
fs模块读写本地文件。 - Express 框架:简化路由,写更少代码做更多事。
- 数据库操作:连接 MySQL 或 MongoDB,持久化数据。
学习时要掌握“提问的艺术”:清晰描述报错信息、代码片段和期望结果,问题越精准,答案越有效。编程是练会的,现在就从 hello.js 开始,敲下你的第一行服务器端代码。

评论 0