Node.js 基础语法全攻略:从零开启后端开发之旅

举报
yd_246479514 发表于 2026/10/25 10:04:44 2026/10/25
【摘要】 Node.js 基础语法全攻略:从零开启后端开发之旅Node.js 让 JavaScript 走出了浏览器的沙盒,使其能够在服务器端大显身手。对于前端开发者来说,学习 Node.js 几乎没有额外的语言门槛,因为它的核心就是 JavaScript。在这篇博客中,我们将带你快速梳理 Node.js 的基础语法与核心模块,助你平稳跨入后端开发的大门! 一、 Node.js 快速上手与运行在浏览...

Node.js 基础语法全攻略:从零开启后端开发之旅

Node.js 让 JavaScript 走出了浏览器的沙盒,使其能够在服务器端大显身手。对于前端开发者来说,学习 Node.js 几乎没有额外的语言门槛,因为它的核心就是 JavaScript。

在这篇博客中,我们将带你快速梳理 Node.js 的基础语法与核心模块,助你平稳跨入后端开发的大门!


一、 Node.js 快速上手与运行

在浏览器中,我们通过 window 对象或 DOM API 来与页面交互;而在 Node.js 环境中,运行的是纯粹的 V8 引擎和系统级 API。

1. 编写第一个程序

创建一个名为 app.js 的文件,输入以下代码:

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

2. 运行程序

打开终端(Terminal),输入以下命令运行脚本:

node app.js

你将直接在终端看到输出结果 Hello, Node.js!。


二、 核心全局对象与变量

在 Node.js 中,没有浏览器的 window 对象,但有属于自己的全局对象与环境变量:

  • global: Node.js 的全局命名空间,类似于浏览器的 window。
  • __dirname: 当前模块所在的目录绝对路径。
  • __filename: 当前模块的文件绝对路径(含文件名)。
  • process: 进程对象,可以获取环境变量、命令行参数或控制进程退出(如 process.env)。
console.log("当前文件目录:", __dirname);
console.log("当前文件全路径:", __filename);


三、 模块化开发(CommonJS 与 ES Modules)

Node.js 早期采用的是 CommonJS 规范,而现代 Node.js 也全面支持了 ES Modules (ESM)。

1. CommonJS 规范(传统经典)

使用 require() 导入模块,使用 module.exports 或 exports 导出模块。

// math.js (导出)
const add = (a, b) => a + b;
module.exports = { add };

// app.js (导入)
const { add } = require('./math');
console.log(add(2, 3)); // 输出: 5

2. ES Modules 规范(现代标准)

在 package.json 中配置 "type": "module" 后,即可直接使用 import / export:

// math.js
export const add = (a, b) => a + b;

// app.js
import { add } from './math.js';
console.log(add(2, 3));


四、 核心内置模块(Built-in Modules)

Node.js 提供了极其丰富的内置模块,无需安装即可直接使用。以下是最常用的三个:

1. 文件系统 (fs)

用于对系统的文件和目录进行读写操作。

const fs = require('fs');

// 异步读取文件
fs.readFile('./note.txt', 'utf8', (err, data) => {
  if (err) throw err;
  console.log(data);
});

2. 路径处理 (path)

用于处理和转换文件路径,解决不同操作系统下路径分隔符(\ vs /)不兼容的问题。

const path = require('path');

// 拼接路径
const filePath = path.join(__dirname, 'public', 'index.html');
console.log(filePath);

3. HTTP 服务 (http)

Node.js 最强大的特性之一,能够轻松构建一个高性能的 Web 服务器。

const http = require('http');

const server = http.createServer((req, res) => {
  res.writeHead(200, { 'Content-Type': 'text/plain; charset=utf-8' });
  res.end('你好,欢迎来到 Node.js 世界!');
});

server.listen(3000, () => {
  console.log('服务器已运行在 http://localhost:3000');
});


五、 异步编程与事件循环

Node.js 采用单线程、非阻塞I/O、事件驱动模型。这意味着它能够高效处理高并发请求而不会卡死。

在日常开发中,我们需要熟练掌握处理异步的方式:

  1. 回调函数(Callback):早期常用,容易导致“回调地狱”。
  2. Promise:链式调用,改善了代码结构。
  3. Async / Await:目前最推荐的现代异步写法,让异步代码写起来像同步代码一样直观。
const fs = require('fs/promises'); // 使用内置的 Promise 版本

async function readFileAsync() {
  try {
    const data = await fs.readFile('./note.txt', 'utf8');
    console.log('文件内容:', data);
  } catch (error) {
    console.error('读取失败:', error);
  }
}

readFileAsync();


结语

Node.js 的基础语法并不复杂,核心在于理解模块化、异步编程以及如何利用强大的内置模块去操作文件和构建服务。

掌握了这些基础后,你就可以进一步学习 Express 或 Koa 等主流 Web 框架,开启更广阔的后端开发大门啦!

【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。