📦 严格按 SemVer 2.0.0 规则比较:`1.10.0 > 1.9.0`(不是字符串比较)、`1.0.0-alpha < 1.0.0`、`1.0.0+build` 不参与优先级。计算在本地完成,不上传。

⚖️ 两个版本比大小

填入两个版本号后点「比较」。

📋 批量解析与排序

0 个版本

⚠️ 使用提示:① 必须完整写成 `主版本.次版本.修订号` 三段,`1.0` 这类两段写法不合法;② 预发布版本优先级低于正式版(`1.0.0-alpha < 1.0.0`),多个预发布标识按点分逐段比较(数字比数字、字符串按字典序,数字优先级低于字符串);③ 构建元数据(`+` 之后)不参与优先级比较;④ 本工具只做版本比较,不做 npm 的 `^` `~` 范围匹配;⑤ 内容只在你的浏览器里处理,不上传。

📦

SemVer 版本比较

开发工具 完全免费 🌙 支持黑夜模式 🔒 本地计算,不上传 📐 SemVer 2.0 🔀 批量排序

`1.10.0` 和 `1.9.0` 谁大?用字符串比较会得出错误答案——这正是语义化版本规范存在的意义。升级依赖、挑选版本、写升级日志时,用它一比就清楚。
① 严格解析:拆出主版本 / 次版本 / 修订号 / 预发布 / 构建元数据;
② 两个版本比大小:给出 > / < / = 及原因;
③ 批量排序:多行版本号按新旧排序,非法版本高亮提示;
④ 预发布规则:`1.0.0-alpha < 1.0.0` 这类反直觉情况也处理正确。
全程在你自己的浏览器里计算,不上传。

类别开发工具
规范Semantic Versioning 2.0.0
输入版本号,支持批量
运行环境所有现代浏览器

核心特性

SemVer 2.0 规则
两段比较
批量排序
预发布优先级
非法版本高亮
不上传

关于这个工具

怎么实现:
① 解析:正则 `^(\d+)\.(\d+)\.(\d+)(?:-([\w.-]+))?(?:\+([\w.-]+))?$` 拆出五段;
② 核心比较:先比主 / 次 / 修订号(数值比较,所以 10 > 9);
③ 预发布:有预发布的版本优先级更低;都有时按点分标识符逐段比——纯数字比数值、纯字符串比字典序,数字标识符优先级低于字符串,段数少的更小;
④ 构建元数据:完全忽略,不参与比较。
它不做:不做 `^` `~` 范围匹配(那是 npm semver 库的功能)。

怎么用

  1. 第 1 步
    比大小:填版本 A 与版本 B,点「⚖️ 比较」。
  2. 第 2 步
    排序:把多个版本每行一个粘进列表,选方向后点「🔀 解析并排序」。
  3. 第 3 步
    看解析表:主 / 次 / 修订 / 预发布 / 构建各列,非法版本会标红。

更新记录

  • v1.0 2026-09-22 工具正式上线:按 SemVer 2.0.0 解析与比较版本号,支持两段大小比较、批量排序(从旧到新 / 从新到旧)、预发布优先级规则(alpha < 正式版、点分标识符逐段比较)与非法版本高亮。本地计算不上传,适配黑夜模式与移动端。

常见问题

为什么 `1.0.0-alpha` 比 `1.0.0` 小?
这是 SemVer 的明确规定:带预发布标识的版本表示「还不稳定、还没到 1.0.0」,因此优先级低于对应的正式版。
顺序示例:`1.0.0-alpha < 1.0.0-alpha.1 < 1.0.0-alpha.beta < 1.0.0-beta < 1.0.0-beta.2 < 1.0.0-rc.1 < 1.0.0`。
为什么 `1.0` 提示不合法?
SemVer 要求版本号必须是三段(主版本.次版本.修订号)。`1.0`、`v1.0.0` 都不符合规范。
注:`v` 前缀在很多项目里常见,但严格来说不在 SemVer 规范内,本工具不接受;请先去掉 `v`。

💬 留言板 0

全部留言需审核通过后展示
💬

还没有留言,来抢沙发吧!

✍️ 说点什么
0 / 500
图形验证码