3 分钟掌握 Node.js 版本的区别

2023-10-27

在我们日常开发中,Node.js 使用场景越来越多,大到服务端项目,小到开发工具脚本,所以掌握 Node.js 一些基础知识是非常有必要的。 今天主要聊一下 Node.js 中 LTS 和 Current 的区别和如何选择合适的版本。

一、版本介绍

在官网上可以看到 Node.js 有 LTS 系列和 Current 系列,分别对应不同的最新版本号。

(本图来自:Node.js

Node.js 的版本号命名遵循语义化版本(Semantic Versioning),统一版本号表示规则,该规则规定了版本号如何表示,如何增加,如何进行比较,不同的版本号意味着什么。

版本格式:主版本号.次版本号.修订号

  • 主版本号(major):当你做了不兼容的 API 修改,
  • 次版本号(minor):当你做了向下兼容的功能性新增,可以理解为Feature版本,
  • 修订号(patch):当你做了向下兼容的问题修正,可以理解为Bug fix版本。

二、LTS 版本

LTS 版本全称 Long Time Support,即长期支持版本,重点在于稳定性和安全性,每个 LTS 版本的大版本号都是偶数,建议首次下载以及后续的每次升级都选择 LTS 版本,减少开发过程中出现的未知问题。 LTS 版本有 3 个阶段的生命周期:

生命周期 含义 说明
Active 活跃阶段 每个从 Current 进入 LTS 的偶数版本,都会有 18 个月的时间被积极维护和升级。
Maintenance 维护阶段 活跃阶段达到 18 个月后,会进入为期 12 个月的维护阶段,期间只会进行错误修复和安全补丁。
End of Life 结束阶段 简称 EOL ,在维护阶段达到期限之后,该版本进入 EOL 阶段,将不再维护,也就是说,每个 LTS 版本最长会有 30 个月的维护时间,之后将不再进行维护。

版本的生命周期图(2022-2025):

(图片来自:Nodejs)

三、Current 版本

Current 即最新发布版本,该版本专注于必要功能的开发和现有 API 的完善,具有较短的寿命和更频繁的代码更新。 你可以在该版本体验到最新功能,也可以能遇到各种意想不到的问题和兼容性要处理。 通常 Current 版本会在每 6 个月发布一次大版本(特殊情况除外):

  • 每年 4 月份发布新的偶数版本;
  • 每年 10 月份发布新的奇数版本。

(图片来自:Nodejs releases

详细的版本更新记录,可以查看Node.js releases

四、如何选择合适的版本?

  • 使用 LTS 版本

一般用于生产环境,重点在于稳定,如果你需要稳定性并拥有复杂的生产环境(例如中型或大型企业),建议使用 LTS 版本。

  • 使用 Current 版本

一般用于测试环境,如果你是为了尝试新的版本和新特性(比如 ECMAScript 新特性),或者能够在不干扰环境的情况下快速轻松地升级版本,建议使用 Current 版本。

五、总结

本文主要聊一下 Node.js 中 LTS 和 Current 的区别和如何选择合适的版本,在实际开发中,并不需要及时更新到最新版本,我们完全可以按照项目技术栈依赖的最低 Node.js 版本决定是否升级,如果条件允许,还是建议至少把大版本升级到最新的 LTS 版本。

最后

对于从来没有接触过网络安全的同学,我们帮你准备了详细的学习成长路线图。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。

同时每个成长路线对应的板块都有配套的视频提供:


当然除了有配套的视频,同时也为大家整理了各种文档和书籍资料&工具,并且已经帮大家分好类了。

因篇幅有限,仅展示部分资料,有需要的小伙伴,可以【点下方卡片】免费领取:

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

3 分钟掌握 Node.js 版本的区别 的相关文章

随机推荐

  • PCL学习笔记:PCL的初次安装和使用。

    注 资料来源 D 项目资料 YC 激光扫描建模 长沙项目 2016 2019 2017 2018 文档资料 技术总结YC 201703 YC 激光建模技术总结 201703及以后 docx 目录 A PCL的初步安装及测试 0 安装平台 1
  • Ubuntu换源+VMware Tools安装

    Contents 1 Ubuntu20 04换国内源 1 1 备份文件 1 2 修改配置文件 1 3 更新 2 VMware Tools安装 2 1 解决安装VMwareTools显示灰色 2 2 正式安装 复制压缩文件至 opt 切换为r
  • python的cls,self,classmethod,staticmethod

    python的cls self classmethod staticmethod python类里会出现这三个单词 self和cls都可以用别的单词代替 类的方法有三种 一是通过def定义的 普通的一般的 需要至少传递一个参数 一般用sel
  • 【满分】【华为OD机试真题2023 JAVA&JS】最差产品奖

    华为OD机试真题 2023年度机试题库全覆盖 刷题指南点这里 最差产品奖 知识点滑窗 时间限制 1s 空间限制 256MB 限定语言 不限 题目描述 A公司准备对他下面的N个产品评选最差奖 评选的方式是首先对每个产品进行评分 然后根据评分区
  • Chapter 1 Introduction

    Chapter 1 Introduction focus on communication and queueing systems formulated problem optimize the time averages of cert
  • 使用python实现短线选股

    经常做短线的朋友都知道 选股是个较为复杂的工作 尤其是像我们这种非职业选手 下面就分享一些通过python实现选股的思路 股票信息获取 炒短线离不开龙虎榜 我们先来通过龙虎榜来进行股票选择 url https applhb longhuvi
  • 数据结构和算法(5)-----树

    一 哈夫曼树 基本介绍 给定n个权值作为n个叶子结点 构造一棵二叉树 若该树的带权路径长度 wpl 达到最小 称这样的二叉树为最优二叉树 也称为哈夫曼树 Huffman Tree 还有的书翻译为霍夫曼树 赫夫曼树是带权路径长度最短的树 权值
  • 【JS算法系列】1.翻转字符串的四种方法

    1 使用数组的 reverse 方法 let str hello let reversed str split reverse join olleh 2 从字符串的尾部开始迭代 并逐个添加字符到新的字符串中 let str hello le
  • qt打包应用程序

    cannot find gcc installation directory g exe must be in the path http t csdn cn d5yaf
  • 期权酱也来说说期权双卖策略原理

    期权option 又称选择权 是一类衍生品合约 买方支付权利金给卖方之后 买方有权在未来的特定日期或之前 以特定的价格向卖方买入或卖出标的资产的权利 下文介绍期权酱也来说说期权双卖策略原理 本文来自 期权酱 期权的本质简单说就是买方支付权利
  • 自己挖坑自己填,谷歌大改Transformer注意力,速度、内存利用率都提上去了

    点击上方 AI遇见机器学习 选择 星标 公众号 重磅干货 第一时间送达 来自 机器之心 考虑到 Transformer 对于机器学习最近一段时间的影响 这样一个研究就显得异常引人注目了 Transformer 有着巨大的内存和算力需求 因为
  • 挖掘机整体(2012.11.30)

    将近1周 终于把整体搞定了 这周的问题所在就是由于 180 ANGLE或者180 ANGLE的余弦值都相同 所以才会来回晃 我用了ASINF反正弦
  • Spring 框架学习—控制反转(IOC)

    Spring是一个开源框架 Spring是于2003 年兴起的一个轻量级的Java 开发框架 由Rod Johnson创建 简单来说 Spring是一个分层的JavaSE EEfull stack 一站式 轻量级开源框架 主要用于降低模块之
  • C#编程中的报错解决System.InvalidOperationException

    C 编程中的报错解决System InvalidOperationException 问题场景 问题原因 解决方案 方案一 打破规则 方案二 利用委托 Delegate 问题场景 在C Windows GUI编程中 从某个子线程去访问设计器
  • 计算机类毕业设计优秀最新题目

    主要有以下类别 python c语言 c vc opencv opengl程序设计 单片机类 51 stm32 arduino arm avr 龙芯开发板 嵌入式系统等硬件设计 程序设计 protues仿真 下列题目涵盖但不限于以上内容 4
  • 【Unity】渐入渐出的黑屏(白屏)过场动画最简单的实现

    一个简单的黑屏动画 用于2D项目 效果类似慢眨眼 进 出房间时切换场景的衔接过渡 这种效果的实现方式其实蛮多的 我能想到的包括用shader 用一张全黑Sprite覆盖屏幕 或者直接做成一个UI 最近学了一些UnityShader 所以首先
  • html title 属性多行显示

    html global attribute title displays in multiple lines 下面的代码段主要是展现了4种方式让 title 属性的多行展示 经测试 至少兼容到了 ie8
  • java JDBC

    JDBC是什么 Java DataBase Connectivity Java语言连接数据库 JDBC的本质是什么 一套接口 JDBC是SUN公司制定的一套接口 interface 接口都有调用者和实现者 面向接口调用 面向接口写实现类 这
  • Golang笔记:使用exec包执行外部程序与Shell命令

    文章目录 目的 使用演示 Cmd结构体 总结 目的 程序中执行外部程序是比较常用的功能 Golang执行外部程序可以使用标准库中的 os exec https pkg go dev os exec 这个包默认是用来执行外部程序的 可以通过调
  • 3 分钟掌握 Node.js 版本的区别

    在我们日常开发中 Node js 使用场景越来越多 大到服务端项目 小到开发工具脚本 所以掌握 Node js 一些基础知识是非常有必要的 今天主要聊一下 Node js 中 LTS 和 Current 的区别和如何选择合适的版本 一 版本