Node.js是基于Chrome V8引擎的服务器端JavaScript运行时,移除浏览器API、提供fs/net等服务端API,通过node命令执行JS文件,采用global全局对象、CommonJS模块系统及非阻塞I/O事件驱动模型。

Node.js 不是浏览器里的 JavaScript,而是让 JavaScript 能在服务器端(也就是你的电脑本地或服务器上)直接运行的运行时环境。它用的是 Chrome V8 引擎,但去掉了浏览器相关的 API(比如 document、window),换成了面向文件系统、网络、进程等服务端能力的 API。
Node.js 怎么运行 JavaScript 文件
安装 Node.js 后,你就可以在终端(命令行)里执行 JS 文件:
Node.js 还能启动 HTTP 服务、读写文件、连接数据库——这些在浏览器里默认做不到,因为涉及系统权限和安全限制。
全局对象不同:global vs window
浏览器中顶层对象是 window,而 Node.js 中是 global。这意味着:
AJAX即“Asynchronous Javascript And XML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。它不是新的编程语言,而是一种使用现有标准的新方法,最大的优点是在不重新加载整个页面的情况下,可以与服务器交换数据并更新部分网页内容,不需要任何浏览器插件,但需要用户允许JavaScript在浏览器上执行。《php中级教程之ajax技术》带你快速
立即学习“Java免费学习笔记(深入)”;
-
setTimeout、console、process都存在,但来源不同 -
document、localStorage、fetch(旧版需 polyfill)在 Node.js 里原生没有 - Node.js 提供了
require()和module.exports来组织代码,浏览器原生不支持(ESM 用import/export)
I/O 模型:非阻塞 + 事件驱动
Node.js 默认所有 I/O 操作(如读文件、发请求)都是异步非阻塞的,靠事件循环处理回调或 Promise:
- 浏览器也用事件循环,但 Node.js 的事件机制更底层,可监听文件变化、TCP 连接、子进程退出等
- 比如
fs.readFile()不会卡住整个程序,而fs.readFileSync()会——后者应避免在服务端高频使用
模块系统与生态差异
Node.js 自带 CommonJS 模块系统,npm 是其默认包管理器:










