node.js怎么看版本号
详细介绍查看 Node.js 版本号的多种方法,包含命令行终端常用命令、配套 npm 与 V8 引擎版本查看、多版本管理工具 nvm 下的排查以及在代码中动态获取版本的方式。
查看当前电脑上安装的 Node.js 版本号,最快捷的方式是在命令行终端中运行 node -v 或 node --version。命令执行后,终端会直接输出类似 v20.11.0 的版本信息。若系统中同时存在多版本管理工具(如 nvm)或需要在运行期检测环境,也可以借助专属命令或代码接口精准获取。
一、命令行终端的基础查看步骤
无论使用的是 Windows、macOS 还是 Linux 操作系统,Node.js 安装完成后都会向系统注入全局可执行命令。通过终端工具即可在数秒内完成核验。
1. 打开操作系统的终端工具
- Windows 系统:按下键盘上的快捷键
Win + R,在弹出的运行框中输入powershell或cmd,然后按回车键打开终端。 - macOS 系统:按下
Command + 空格键打开聚焦搜索(Spotlight),输入“终端”或“Terminal”并打开。 - Linux 系统:可以使用快捷键
Ctrl + Alt + T快速调出终端窗口。
2. 输入查看命令并回车
在打开的光标后输入以下任意一条命令:
node -v
或者使用完整参数名称:
node --version
3. 理解终端输出的内容
示例输出v20.11.0
终端返回的结果通常以字母 v 开头,后面跟着三段由英文句点分隔的数字。这套数字遵循语义化版本规范(Semantic Versioning):
- 主版本号(Major):如
20,通常偶数为主线长期支持版本(LTS),奇数为实验特性较多的过渡版本。 - 次版本号(Minor):如
11,表示新增了向下兼容的功能特性。 - 修订号(Patch):如
0,表示对已有功能的问题修复或安全补丁。
二、深入查看配套依赖与底层引擎版本
Node.js 并非单一程序,它由 Google V8 引擎、网络库 libuv、加密套件 OpenSSL 等多套底层组件整合而成,并且通常捆绑安装了 npm 包管理器。如果需要更精准地排查项目兼容性,可以查看更详细的版本信息。
1. 查看捆绑的 npm 版本号
Node.js 安装包一般会自动配置好 npm。在终端中输入以下指令可以查看当前匹配的包管理器版本:
npm -v
示例输出
10.2.4
2. 一次性打印底层依赖的全部版本号
如果需要核对 V8 引擎支持的 ECMAScript 语法特性版本,或者排查 OpenSSL 的加密协议支持,无需写脚本文件,直接在终端中利用 Node.js 的行内表达式参数 -p 即可打印全部依赖版本:
node -p "process.versions"
示例输出
{
node: '20.11.0',
acorn: '8.11.2',
ada: '2.7.4',
ares: '1.20.1',
brotli: '1.1.0',
cldr: '44.0',
icu: '74.1',
llhttp: '8.1.1',
modules: '115',
napi: '9',
nghttp2: '1.58.0',
nghttp3: '0.7.0',
ngtcp2: '0.8.1',
openssl: '3.0.12+quic',
simdutf: '4.0.4',
unicode: '15.1',
uv: '1.46.0',
v8: '11.3.244.8-node.17',
zlib: '1.3.0.1-motley-40e35a7'
}
若只想单独获取 V8 引擎版本,可将查询键直接指向目标属性:
node -p "process.versions.v8"
三、多版本管理工具下的查看与排查(nvm / n)
在日常开发中,多台工程可能分别依赖 Node.js 16、18 或 20 等不同版本,因此许多开发者会使用 nvm(Node Version Manager)或 n 来统一管理。在这种环境下,直接执行 node -v 看到的是当前终端生效的临时版本,可以通过专用命令查看更完整的多版本状态。
1. 查看当前激活的 Node.js 版本
nvm current
示例输出
v20.11.0
2. 列出本地已经安装的所有版本列表
nvm ls
在 Windows 环境的 nvm-windows 中也可以使用:
nvm list
示例输出
v16.20.2
v18.19.0
* v20.11.0 (Currently using 64-bit executable)
v21.6.1
输出中带有星号(*)或彩色高亮标记的行,即表示当前正在使用的版本号。
3. 确认当前 node 命令的物理路径
如果发现执行 node -v 的结果与预期的版本不符,通常是因为系统环境变量中存在其他全局安装的 Node 路径,优先被执行了。可以通过路径查询命令定位真正运行的文件:
- macOS / Linux:运行
which node - Windows:运行
where node
四、在 Node.js 代码与脚本中动态获取版本号
除了在终端手动敲击命令,在实际编写构建脚本、自动化流水线或命令行工具时,往往需要通过代码动态判断当前运行的 Node.js 版本,以便根据版本差异采用兼容方案。
1. 获取当前版本字符串:process.version
Node.js 的内置全局对象 process 提供了 version 属性,直接返回形如 v20.11.0 的字符串:
// check-version.js
console.log('当前正在运行的 Node 版本:', process.version);
执行该脚本:
node check-version.js
示例输出
当前正在运行的 Node 版本: v20.11.0
2. 在代码中做版本区间逻辑判断
若需要判断当前 Node.js 是否满足项目的最低版本要求(例如要求 Node.js 18 及以上):
const currentMajor = parseInt(process.version.slice(1).split('.')[0], 10);
if (currentMajor < 18) {
console.error(`当前 Node.js 版本为 ${process.version},本项目需要 18.0.0 以上版本!`);
process.exit(1);
} else {
console.log(`Node.js 环境核验通过(主版本: ${currentMajor})`);
}
五、查看版本时的常见问题与排查指南
1. 提示 “command not found: node” 或 “不是内部或外部命令”
在终端输入 node -v 后,如果系统提示找不到命令,通常属于以下两种情况:
- 尚未安装 Node.js:前往 Node.js 官方网站(nodejs.org)下载对应操作系统的安装包并完成安装。
- 环境变量未生效:刚完成安装但尚未重新打开终端。Windows 系统修改环境变量后,必须完全关闭并重新打开命令提示符或 PowerShell 窗口;若仍未识别,请手动核对系统环境变量中的
Path是否包含 Node.js 的安装目录。
2. 输入命令后光标进入等待状态(显示 > 符号)
如果不小心只输入了 node 而没有带 -v 参数直接回车,Node.js 会启动交互式解释器(REPL),并在行首显示 > 提示符。此时按下快捷键 Ctrl + C 两次,或者输入 .exit 并回车,即可退回到常规终端环境重新输入 node -v。
node -v 即可获得所需答案。若涉及新旧项目维护或多版本切换,建议搭配 nvm current 和 npm -v 联合核验,确保运行环境完全符合项目构建要求。

































