version中增加了一个isVersion的功能函数

This commit is contained in:
Xu Chang 2025-01-22 19:29:31 +08:00
parent 60f2003324
commit 5e4d4a4db8
4 changed files with 33 additions and 7 deletions

3
.gitignore vendored
View File

@ -66,4 +66,5 @@ build
package-lock.json
dist
src/base-app-domain
src/base-app-domain-back
src/base-app-domain-back
test

View File

@ -4,4 +4,10 @@
* @param reqVersion
* @returns
*/
export declare const compareVersion: (curVersion: string, reqVersion: string) => number;
export declare function compareVersion(curVersion: string, reqVersion: string): number;
/**
*
* @param version
* @returns
*/
export declare function isVersion(version: string): boolean;

View File

@ -1,13 +1,13 @@
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.compareVersion = void 0;
exports.isVersion = exports.compareVersion = void 0;
/**
* 版本比较
* @param curVersion 当前版本
* @param reqVersion 比较版本
* @returns
*/
const compareVersion = (curVersion, reqVersion) => {
function compareVersion(curVersion, reqVersion) {
const v1 = curVersion.split('.');
const v2 = reqVersion.split('.');
for (let i = 0; i < Math.max(v1.length, v2.length); i++) {
@ -17,5 +17,15 @@ const compareVersion = (curVersion, reqVersion) => {
return num1 - num2;
}
return 0;
};
}
exports.compareVersion = compareVersion;
;
/**
* 是不是一个有效的版本号
* @param version
* @returns
*/
function isVersion(version) {
return /([1-9][0-9]*|[0-9])\.([1-9][0-9]*|[0-9])*\.([1-9][0-9]*|[0-9])*(\-[0-9A-Za-z-](\.[0-9A-Za-z-])*)*/g.test(version);
}
exports.isVersion = isVersion;

View File

@ -5,7 +5,7 @@
* @param reqVersion
* @returns
*/
export const compareVersion = (curVersion: string, reqVersion: string): number => {
export function compareVersion (curVersion: string, reqVersion: string): number {
const v1 = curVersion.split('.');
const v2 = reqVersion.split('.');
@ -15,4 +15,13 @@ export const compareVersion = (curVersion: string, reqVersion: string): number =
if (num1 !== num2) return num1 - num2;
}
return 0;
};
};
/**
*
* @param version
* @returns
*/
export function isVersion(version: string) {
return /([1-9][0-9]*|[0-9])\.([1-9][0-9]*|[0-9])*\.([1-9][0-9]*|[0-9])*(\-[0-9A-Za-z-](\.[0-9A-Za-z-])*)*/g.test(version);
}