versioning
TypeScript icon, indicating that this package has built-in type declarations

1.1.2 • Public • Published

版本号 (version number)


NPM version Build Status Coverage Status

语义化版本号比较模块。

语义化版本号通常定义如下:

Major_Version_Number.Minor_Version_Number[.Revision_Number[.Build_Number]]

主版本号            .子版本号            [.修正版本号     [.编译版本号  ]]

使用

var version = require("versioning");
version.compare("6.0", "6"); // 0
version.eq("6.0", "6"); // true

var v = new version("6.0");
v == 6 // true
v > 6  // false

API

静态方法:

version.compare(v1, v2)

比较两个语义化版本号的大小。

返回:

  • 如果两个版本号都具有的部分相等,返回 0;
  • 如果两个版本号都具有的部分中,v1 大于 v2 则返回 1;
  • 如果两个版本号都具有的部分中,v1 小于 v2 则返回 -1。

version.eq(v1, v2)

比较两个版本号是否相等。

返回:

  • 如果两个版本号都具有的部分相等,返回 true;
  • 否则,返回 false。

version.gt(v1, v2)

比较两个版本号都具有的部分中,v1 是否大于 v2。

返回:

  • 如果 v1 > v2,返回 true;
  • 否则返回 false。

version.gte(v1, v2)

比较两个版本号都具有的部分中,v1 是否大于或等于 v2。

返回:

  • 如果 v1 >= v2,返回 true;
  • 否则,返回 false。

version.lt(v1, v2)

比较两个版本号都具有的部分中,v1 是否小于 v2。

返回:

  • 如果 v1 < v2,返回 true;
  • 否则,返回 false。

version.lte(v1, v2)

比较两个版本号都具有的部分中,v1 是否小于或等于 v2。

返回:

  • 如果 v1 <= v2,返回 true;
  • 否则,返回 false。

实例化

除了上面的静态方法, versioning 还可以进行实例化,API 与上面一致。

特殊的,versioning 实例可以使用算术比较运算符,比较两个版本的大小。

注意:使用算术比较运算符,只能比较到子版本号,而且要求子版本号小于 10 的场景。

var versioning = require("versioning");

var ver = new versioning("6.0");

ver.eq(6); // true.
ver.gte("5.9"); // true.

ver == 6 // true.
ver > 5.9 // true.

注意

JavaScript 引擎的限制,versioning 实例与字符串相加时,只返回两级版本号。 要得到完整的原生版本号,需要使用显示转换方式。

var v = new versioning("1.2.3.4");

"" + v; // "1.2"

String(v); // "1.2.3.4"
v.toString(); // "1.2.3.4"

Readme

Keywords

Package Sidebar

Install

npm i versioning

Weekly Downloads

566

Version

1.1.2

License

MIT

Unpacked Size

14.8 kB

Total Files

9

Last publish

Collaborators

  • hotoo