什么是 Node.js

7 阅读1分钟

什么是 Node.js

Node.js 是基于 Chrome V8 引擎的 JavaScript 运行时环境,不是编程语言,能让 JS 脱离浏览器在服务端/本地运行。


一、核心组成(必说)

Node.js = V8(JS 执行) + libuv(异步 I/O + 事件循环)
组件职责关键能力
V8 引擎解析/编译/执行 JS 语法(let var function 等)把 JS 转成机器码,是 JS 语言能力的核心提供者
libuv(C 语言跨平台库)异步 I/O + 事件循环文件读写、网络请求等非阻塞操作;事件驱动、高并发的底层支撑

二、与浏览器 JS 的关键区别

维度浏览器Node.js
核心引擎V8 + DOM + BOMV8 + libuv
全局对象window documentglobal process Buffer
能力边界页面交互、DOM 操作系统级 I/O、文件、网络、进程
模块系统ES ModuleCommonJS + ES Module
顶层 APIalert fetch localStoragefs http path os crypto

Node 没有 window / DOM,有 globalfshttppath 等系统 API。


三、一句话高分回答

Node.js 是基于 V8 的 JavaScript 运行时,由 V8 负责 JS 执行、libuv 提供异步 I/O 与事件循环,让 JS 可脱离浏览器做服务端、工程化、CLI 等开发,特点是事件驱动、非阻塞 I/O、轻量高效


四、常考延伸点

为什么前端必须会 Node?

领域说明
工程化工具Webpack、Vite、Rollup 均基于 Node
包管理npm、pnpm、yarn 运行在 Node 环境
脚手架create-react-app、vue-cli、astro 等

适用场景

API 服务 | SSR | CLI 工具 | 实时通信(WebSocket)| 高并发 I/O 场景

Node 为什么高并发?

单线程 + 事件驱动 + 非阻塞 I/O,避免了传统多线程的上下文切换开销,适合 I/O 密集型场景(不适合 CPU 密集型)。