Node.js 的版本更新可以说是比较快的,2020年6月的时候,Node.js 的最新版本还是 14.x,2025年6月已经是 24.x 了。当时的一些 Node 项目和构建工具使用最新的 Node.js 可能会出现无法运行的情况,比如一些使用 Vue-cli 初始化的 Vue2 项目,还有一些老版本的 Webpack。

这些项目可能需要依赖 16.x 或以下的 Node.js,但是如果你只安装老版本的 Node.js,又会出现新版本的项目或构建工具无法运行的情况。

要解决这个问题,只能安装多个版本的 Node.js,根据不同的项目使用不同版本的 Node.js。

nvm 就是一个 Node.js 的版本管理工具,使用 nvm 可以很方便的在一台电脑上安装多个版本的 Node.js,切换 Node.js 版本也比较方便。

安装 nvm

如果你之前安装了 Node.js,可以先卸载掉。

注意,Windows 和 Linux/macOS 使用的不是同一个 nvm 项目!

Windows 版 https://github.com/coreybutler/nvm-windows
Linux/macOS 版 https://github.com/nvm-sh/nvm

Windows

如果是 Windows 可以直接访问 https://github.com/coreybutler/nvm-windows/releases ,下载最新版本的 nvm-setup.exe 安装使用。

安装完成后可以输入:

nvm version

查看 nvm 版本。

默认情况下 nvm 会把 Node.js 安装到 nvm 目录下的数字版本号目录,比如你的 nvm 安装到 C:\Program Files\nvm ,你安装了一个 16.20.2 的 Node.js,这个 Node.js 就会安装到 C:\Program Files\nvm\v16.20.2

Linux/macOS

可以先访问项目页面 https://github.com/nvm-sh/nvm ,查看最新的版本。

下面脚本执行:

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash

重新加载配置:

source ~/.bashrc

查看

Windows

查看已安装的 Node.js:

nvm list

输出如下:

  * 24.4.1 (Currently using 64-bit executable)
    16.20.2

前面包含 * 就是当前启用的版本。

查看可以安装的 Node.js 版本:

nvm list available

这里只会输出一部分版本,要查看完整的列表可以访问 https://nodejs.org/en/download/releases

Linux/macOS

查看已安装的 Node.js:

nvm install

输出如下:

->     v14.21.3
       v16.20.2
default -> 16 (-> v16.20.2)
iojs -> N/A (default)
unstable -> N/A (default)
node -> stable (-> v16.20.2) (default)
stable -> 16.20 (-> v16.20.2) (default)
lts/* -> lts/jod (-> N/A)
lts/argon -> v4.9.1 (-> N/A)
lts/boron -> v6.17.1 (-> N/A)
lts/carbon -> v8.17.0 (-> N/A)
lts/dubnium -> v10.24.1 (-> N/A)
lts/erbium -> v12.22.12 (-> N/A)
lts/fermium -> v14.21.3
lts/gallium -> v16.20.2
lts/hydrogen -> v18.20.8 (-> N/A)
lts/iron -> v20.19.4 (-> N/A)
lts/jod -> v22.17.1 (-> N/A)

上面的两行版本 v14.21.3v16.20.2 就是已安装的 Node.js,目前启用的是 v14.21.3

下面列出了一些 lts 版本,不带 N/A 的就是已安装的 Node.js。

查看可以安装的 Node.js 版本:

nvm ls-remote

安装 Node

Windows 版和 Linux/macOS 版的命令是一样的。

安装一个指定版本的 Node.js:

nvm install 版本号

你可以先查看现有的 Node.js 版本,然后选择一个版本安装。

你也可以不输入完整的版本号,比如我要安装一个 16.x 版本:

nvm install 16

默认会下载 16.x 的最新版本。

切换 Node 版本

Windows 和 Linux/macOS 版的命令是一样的。

当你安装了多个版本的 Node.js 时,可以输入 nvm list 查看已安装的 Node.js:

切换到指定版本:

nvm use 版本号

切换到 16.20.2:

nvm use 16.20.2

切换完成后可以直接使用 Node.js 的查看版本命令:

node -v

查看当前启用的 Node 版本。

删除 Node

Windows 和 Linux/macOS 版的命令是一样的。

删除指定版本的 Node:

nvm uninstall 版本号

下面删除 16.20.2 的 Node:

nvm uninstall 16.20.2

如果要卸载 Windows 的 nvm 可以在设置的应用管理卸载。