Node.js新手教程:从零开始学习服务器端JavaScript

郑思远
2025-06-13 00:02
阅读 382

开篇:Node.js 是什么?能做什么?

开篇:Node.js 是什么?能做什么?

你是否听说过 JavaScript 不仅能用在网页上,还能写后端服务?没错!Node.js 就是让我们能够在电脑(服务器)上运行 JavaScript 的工具。

简单来说,Node.js = 一个让 JavaScript 能跑在服务器上的平台。你可以用它来做网站、API 接口、爬虫、聊天室、实时应用等等,用途非常广泛!


环境准备:搭建你的第一个 Node.js 开发环境

环境准备:搭建你的第一个 Node.js 开发环境

步骤一:安装 Node.js

  1. 打开浏览器,访问官网 https://nodejs.org
  2. 下载「LTS」版本(适合初学者)
  3. 按照提示一步步安装完成

✅ 验证是否安装成功:打开终端(Windows 使用 cmd 或 PowerShell),输入以下命令:

node -v

如果显示类似 v18.16.0,就说明安装成功了!

步骤二:安装代码编辑器

推荐使用 Visual Studio Code (VS Code)

  1. 下载安装包并安装
  2. 安装完成后打开它

核心概念:通俗易懂的讲解

核心概念:通俗易懂的讲解

1. 控制台输出内容:console.log()

这是最基础的调试方式,让你知道程序运行到哪一步了。

console.log("Hello, Node.js!");

保存为 hello.js 文件,在终端中运行:

node hello.js

你会看到输出结果:Hello, Node.js!


2. 模块和 require()

Node.js 是模块化的系统。你可以在不同的文件里写功能,然后通过 require() 来调用。

创建两个文件:

math.js

function add(a, b) {
  return a + b;
}

module.exports = { add };

app.js

const math = require('./math');
console.log(math.add(2, 3));

运行:

node app.js

会输出 5


3. 构建你的第一个 Web 服务器

我们来试试用 Node.js 做一个最简单的网页服务器。

新建 server.js

const http = require('http');

const server = http.createServer((req, res) => {
  res.writeHead(200, { 'Content-Type': 'text/plain' });
  res.end('Hello from your first Node.js server!\n');
});

server.listen(3000, () => {
  console.log('Server running at http://localhost:3000/');
});

运行:

node server.js

打开浏览器访问:http://localhost:3000,就能看到页面啦!


实战项目:做一个“欢迎来访”的留言板网站

功能目标:

  • 显示一条欢迎消息
  • 提供一个表单让用户留言
  • 把用户留言保存下来并展示出来

响应式布局概念图-2

1. 创建 HTML 页面 index.html

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>留言板</title>
</head>
<body>
  <h1>欢迎来到我的留言墙</h1>

  <form method="POST">
    <label>你的名字:</label><br>
    <input type="text" name="name"><br><br>
    <label>你的留言:</label><br>
    <textarea name="message"></textarea><br><br>
    <button type="submit">提交留言</button>
  </form>

  <hr>
  <div id="messages"></div>
</body>
</html>

2. 修改服务器逻辑,接收 POST 请求(server.js

const http = require('http');
const fs = require('fs');

let messages = [];

const server = http.createServer((req, res) => {
  if (req.method === 'GET') {
    fs.readFile('index.html', 'utf-8', (err, data) => {
      res.writeHead(200, { 'Content-Type': 'text/html' });
      res.end(data);
    });
  } else if (req.method === 'POST') {
    let body = '';
    req.on('data', chunk => {
      body += chunk.toString();
    });

    req.on('end', () => {
      const params = new URLSearchParams(body);
      const name = params.get('name');
      const message = params.get('message');
      messages.push({ name, message });

      res.writeHead(200, { 'Content-Type': 'application/json' });
      res.end(JSON.stringify(messages));
    });
  }
});

server.listen(3000, () => {
  console.log('Server running at http://localhost:3000/');
});

现在你就可以:

  • 打开网页填写留言
  • 数据会被服务器保存在内存中(重启即丢失)

常见问题解答

Q1:为什么我运行 node 命令报错?

A:可能是 Node.js 没安装好,检查一下 node -v 输出版本号。

Q2:为什么我的表单数据没收到?

A:请确认你写了处理 POST 的代码,并监听了 data 和 end 事件。

Q3:能否不用记这么多 API?

A:当然可以查文档!重要的是理解流程。你可以把常用代码先复制粘贴,慢慢背熟。


学习建议:下一步该学什么?

CSS动画效果展示-1

  1. 进阶学习 Express 框架
    目前我们用的是原生 HTTP 模块,而 Express 是 Node.js 最流行的框架,能快速搭建强大的网站。

  2. 学习如何连接数据库
    Node.js 可以连接 MySQL、MongoDB、PostgreSQL 等多种数据库,数据持久化存储。

  3. 掌握异步编程知识(Promise / async await)
    Node.js 大量使用异步操作,这些知识必不可少。

  4. 尝试部署自己的网站
    可以使用 GitHub Pages、Vercel、Heroku、Render、Cloudflare Workers 等平台免费部署你的 Node 应用。


写在最后

Node.js 并不神秘,只要你有耐心跟着做、多敲代码、多提问,很快就能上手开发完整的前后端小项目。坚持练习,你也能成为全栈开发者!

如果你喜欢这样的教程,请继续关注后续文章《Node.js + Express 入门实战》系列 😊

评论 0

最热最新
暂无评论
匿名用户Lv.1
0
影响力
0
文章
0
粉丝