nvm命令 - nvm命令使用

nvm命令大全

  • nvm arch:显示node是运行在32位还是64位。

  • nvm install <version> [arch] :安装node, version是特定版本也可以是最新稳定版本latest。可选参数arch指定安装32位还是64位版本,默认是系统位数。可以添加--insecure绕过远程服务器的SSL。

  • nvm list [available] :显示已安装的列表。可选参数available,显示可安装的所有版本。list可简化为ls。

  • nvm lsnvm list :显示已安装的列表。

  • nvm on :开启node.js版本管理。

  • nvm off :关闭node.js版本管理。

  • nvm proxy [url] :设置下载代理。不加可选参数url,显示当前代理。将url设置为none则移除代理。

  • nvm node_mirror [url] :设置node镜像。默认是https://nodejs.org/dist/。如果不写url,则使用默认url。设置后可至安装目录settings.txt文件查看,也可直接在该文件操作。

  • nvm npm_mirror [url] :设置npm镜像。https://github.com/npm/cli/archive/。如果不写url,则使用默认url。设置后可至安装目录settings.txt文件查看,也可直接在该文件操作。

  • nvm uninstall <version> :卸载指定版本node。

  • nvm use [version] [arch] :使用制定版本node。可指定32/64位。

  • nvm root [path] :设置存储不同版本node的目录。如果未设置,默认使用当前目录。

  • nvm version 或nvm vnvm -v:显示nvm版本。version可简化为v。

nvm命令示例:

nvm ls available 或 nvm list availablenvm 列出目前目前可用版本,查看可以安装的node版本的过程中我们注意到有这样几个栏: CURRENTLTSOLD STABLEOLD UNSTABLE

image.png

接下来来说说他们几个是啥意思,以及该怎么选择合适的node版本。

版本区别

1.CURRENT(当前版本)

定义:CURRENT 是 Node.js 的最新发布版本,包含最新的特性和改进。

特点:

  • 包含最新的功能和 API。

  • 可能尚未经过充分的生产环境测试。

  • 适合喜欢尝试新特性的开发者。


生命周期:

每个 CURRENT 版本会在发布后 6 个月进入 LTS(长期支持)阶段,或者被淘汰。


2.LTS(长期支持版本)

定义:LTS 是 Node.js 的长期支持版本,适合生产环境使用。

特点:

  • 稳定性高,经过充分测试。

  • 提供长达 30 个月的安全更新和 bug 修复。

  • 适合企业级应用和生产环境。


生命周期:

  • 每个 LTS 版本会经历Active LTS和Maintenance LTS两个阶段。

  • Active LTS:持续 12 个月,定期发布更新。

  • Maintenance LTS:持续 18 个月,仅修复重大 bug 和安全问题。


3.OLD STABLE(旧稳定版本)

定义:OLD STABLE 是指已经结束 LTS 支持的旧版本。

特点:

  • 曾经是 LTS 版本,但已经过了维护期。

  • 不再接收安全更新或 bug 修复。

  • 不建议在生产环境中使用。


4.OLD UNSTABLE(旧非稳定版本)

定义:OLD UNSTABLE 是指那些从未进入 LTS 阶段的旧版本。

特点:

  • 这些版本通常是 CURRENT 版本,但由于某些原因(如发布时间较短)未能进入 LTS 阶段。

  • 不再接收任何更新。

  • 不建议使用。


如何选择合适的版本?

  • 生产环境:选择最新的LTS版本,因为它稳定且长期支持。

  • 开发环境:可以尝试CURRENT版本,体验最新特性。

  • 避免使用:OLD STABLEO 和 OLD UNSTABLE 版本,因为它们不再维护。


Node.js 主要历史版本

以下是 Node.js 主要版本的历史表格,包括发布年份、主要特性以及长期支持(LTS)状态:

Node.js 版本 发布时间 主要特性 LTS 状态 LTS 截止日期
Node.js 0.10 2013年 首个广泛使用的版本,支持类 Unix 系统 -
Node.js 0.12 2014年 稳定性改进,性能优化 -
Node.js 4.x 2015年9月 与 io.js 合并,支持 ES6 部分特性 2018年4月
Node.js 6.x 2016年4月 引入更多 ES6 支持(如类、模板字符串),模块加载性能改进 2019年4月
Node.js 8.x 2017年5月 支持 async/await,提升异步编程简洁性 2019年12月
Node.js 10.x 2018年4月 支持 HTTP/2,优化内存管理和垃圾回收 2021年4月
Node.js 12.x 2019年4月 原生支持 ES 模块(ESM),改进诊断报告功能 2022年4月
Node.js 14.x 2020年4月 提升 V8 引擎性能,增强流处理和诊断工具功能 2023年4月
Node.js 16.x 2021年4月 支持 V8 引擎升级,提升国际化功能,增强 HTTP/2 性能 2024年4月
Node.js 18.x 2022年4月 支持 Web Streams API、fetch API 等新特性 2025年4月
Node.js 20.x 2023年4月 优化诊断工具、流处理,提升内置安全功能 预计为 2026年4月

版本说明

Current 版本:Node.js 奇数版本为 Current 版本(非 LTS),提供最新特性,适合开发者进行测试和创新。

LTS 版本:Node.js 偶数版本为 LTS 版本,适合长期支持和生产环境使用,提供较长时间的维护和安全更新。

Nodejs某个版本最新版


Node.js N-API 代号 发布日期 npm
v23.11.0 v131 -
v10.9.2 发行版更新日志文档
v22.15.0 v127 Jod
v10.9.2 发行版更新日志文档
v21.7.3 v120 -
v10.5.0 发行版更新日志文档
v20.19.1 v115 Iron
v10.8.2 发行版更新日志文档
v19.9.0 v111 -
v9.6.3 发行版更新日志文档
v18.20.8 v108 Hydrogen
v10.8.2 发行版更新日志文档
v17.9.1 v102 -
v8.11.0 发行版更新日志文档
v16.20.2 v93 Gallium
v8.19.4 发行版更新日志文档
v15.14.0 v88 -
v7.7.6 发行版更新日志文档
v14.21.3 v83 Fermium
v6.14.18 发行版更新日志文档
v13.14.0 v79 -
v6.14.4 发行版更新日志文档
v12.22.12 v72 Erbium
v6.14.16 发行版更新日志文档
v11.15.0 v67 -
v6.7.0 发行版更新日志文档
v10.24.1 v64 Dubnium
v6.14.12 发行版更新日志文档
v9.11.2 v59 -
v5.6.0 发行版更新日志文档
v8.17.0 v57 Carbon
v6.13.4 发行版更新日志文档
v7.10.1 v51 -
v4.2.0 发行版更新日志文档
v6.17.1 v48 Boron
v3.10.10 发行版更新日志文档
v5.12.0 v47 -
v3.8.6 发行版更新日志文档
v4.9.1 v46 Argon
v2.15.11 发行版更新日志文档
v0.12.18 v14 -
v2.15.11 发行版更新日志文档

列表数据来源于:https://nodejs.org/zh-cn/about/previous-releases, 即nvm lsnvm list看到的版本号是来源此。


Node.js 与 NPM版本对照关系

Node.js 和 NPM 作为紧密结合的工具,它们的版本历史和相互依赖关系是开发者需要关注的重点。以下是 Node.js 主要版本的发展历程以及与 NPM 版本的对照关系。

Node.js 与 NPM 版本对照关系

Node.js 在每次发布时,通常会捆绑一个兼容的 NPM 版本。随着 Node.js 的更新,NPM 也会得到相应的升级。

以下是主要 Node.js 版本与 NPM 版本的对照关系:

Node.js 版本 对应的 NPM 版本
Node.js 0.10 NPM 1.x
Node.js 0.12 NPM 2.x
Node.js 4.x NPM 2.x
Node.js 6.x NPM 3.x
Node.js 8.x NPM 5.x
Node.js 10.x NPM 6.x
Node.js 12.x NPM 6.x
Node.js 14.x NPM 6.x
Node.js 16.x NPM 7.x
Node.js 18.x NPM 8.x
Node.js 20.x NPM 9.x