用JS来判断版本号比如v21.2.2.2和v21.2.2.2.15
当判断两个版本号的时候,不能单纯的去点然后相互比较,版本比较可能比较特殊,但是分析起来又挺简单的,既然不能直接去点比较,
那就拆分成数组,一组一组对应的去比,为了能正常的进行比较 如果上一个版本长度小于当前版本设置的长度,则给上一个版本的数组追加一个值为0的字符串
js:
$("#curVersion").on("blur",versionFn);
function versionFn(){
var curV = $("#curVersion").val(),
reqV = $("#reqVersion").val(),
curArr=curV.split('.'),
reqArr=reqV.split('.'),
maxL= Math.max(curArr.length,reqArr.length),
index=0,
diff=0; //当前比较是否相等
if(reqArr.length!=maxL){//为了能正常的进行比较 如果上一个版本长度小于当前版本设置的长度,则给上一个版本的数组追加一个值为0的字符串
reqArr.push("0");
}
//console.log(curArr,reqArr);
while(index<maxL){
diff = parseInt(curArr[index])>parseInt(reqArr[index])?1:(parseInt(curArr[index])==parseInt(reqArr[index])?0:-1);
if(diff!=0){
break;
}
index++;
}
if (diff>0) {
console.log('新')
}else if (diff==0) {
console.log('稳定')
}else{
console.log('旧')
}
}
html:
旧、<input id="reqVersion" type="text" /><br />
新、<input id="curVersion" type="text" />
效果图如下:

博文乃自己在实际实验中所遇到,并记录下来。如有不妥,请谅解。如果还有更好的解决办法,欢迎来一起探讨。qq邮箱:1198217495@qq.com
用JS来判断版本号比如v21.2.2.2和v21.2.2.2.15的更多相关文章
- 如何用js来判断浏览器类型(ie,firefox)等等
现在网络上的浏览器,操作系统就象中国的方言一样,那个叫多啊!这给我们这些开发人员 带来了巨大的痛苦!虽然可能大家的喜好不同!用的系统也不同!有人喜欢用ie,有人喜欢用 firefox,还有人喜欢用腾讯 ...
- gulp为css,js添加版本号
由于cdn缓存,更改样式后会有一段时间不生效,解决方法就是给css,js加上版本号效果如下: 1.安装gulp插件 npm install --save-dev gulp-rev (version:9 ...
- 给js加版本号解决浏览器缓存问题
我们知道打开网页时浏览器会加载需要的资源,比如图片.音频.js文件.css文件等.并且会把这些资源作为缓存保存下来,再次打开网页时缓存好的资源就不需要再次加载了.但是,这样有一个问题,就是当程序猿更新 ...
- 关于Js添加版本号
背景 在搜索引擎中搜索关键字.htaccess 缓存,你可以搜索到很多关于设置网站文件缓存的教程,通过设置可以将css.js等不太经常更新的文件缓存在浏览器端,这样访客每次访问你的网站的时候,浏览器就 ...
- js jquery版本号 金额千分之一转换功能(非规范,高效率)
没想到js将没有 金额千分之一格处理器类型(例子:1,234.01 这种格公式).互联网搜索圈,我们使用的是常规方式.常规效率受宠若惊啊.和资源密集型,速度慢(虽然处理起来会很直观). 因此专门写一个 ...
- JS 实现版本号比较功能
js实现一个客户端版本号的统计,目前该功能可以实现版本号中数字版本的统计,例如2.2.3 <2.2.3.1, 1.2.3<2.0.0,原理就是从高版本号到次版本号依次比较 if (!Arr ...
- (网页)css和js的版本号问题
HTML页面自动清理js.css文件的缓存,之前用的是?v=11每次都要找寻到网页进行更改,非常的麻烦. <script type="text/javascript"> ...
- 添加js,css 版本号?v= hash
node_modules设置 a.打开 node_modules\gulp-rev\index.js 第144行 manifest[originalFile] = revisionedFile; 更新 ...
- 根据js来判断手机是操作系安卓还是ios
平常开发很常见的功能,在移动端需要根据javaScript来判断手机是安卓还是ios进行应用市场跳转. 通过js提供的Navigator可以来判断手机是安卓还是ios系统,代码如下 1.js判断是否为 ...
随机推荐
- maven父子模块deploy 问题
1.问题描述:直接 deploy 子某块,但第三者确不能引用 jar(jar down不下来,但pom不报错) 原因:父子模块项目必须保证父模块pom deploy后,再 deploy 子模块才能被引 ...
- SpingBoot+Mybaits+Vue,更新学习
1.DTO 2.实体类 3.Controller层,UpdatePrize/{id}为接口 4.Service层 5.Impl实现层 之后就可以更新数据了. 6.Vue链接接口 7.请求,解析,返回值 ...
- 二, 字符串和编码之 python 格式化
1),在Python中,采用的格式化方式和C语言是一致的,用%实现,看下例: >>> 'Hello, %s' % 'world' 'Hello, world' >>> ...
- 初学python之路-day09
今天的主要内容为内存管理. 1.引用计数:垃圾回收机制的依据 # 1.变量的值被引用,该值的引用计数 +1 # 2.变量的值被解绑,该值的引用计数 -1 # 3.引用计数为0时就会被垃圾回收机制回收 ...
- 【spark】dataframe常见操作
spark dataframe派生于RDD类,但是提供了非常强大的数据操作功能.当然主要对类SQL的支持. 在实际工作中会遇到这样的情况,主要是会进行两个数据集的筛选.合并,重新入库. 首先加载数据集 ...
- swiper 逆向轮播
在调用swiper的div上加dir="rtl"就行了,例子见下面链接 http://www.swiper.com.cn/demo/26-rtl.html <div clas ...
- python-os创建文件夹-create_dir_if_not_exist.py
#!/bin/usr/env python3 __author__ = 'nxz' import os import argparse MESSAGE = '%s 文件夹已经存在' def creat ...
- 错误笔记 对象为null时调用改对象的方法会报错
对象为null时调用改对象的方法会报错
- IntelliJ IDEA 如何设置类头注释和方法注释
从VS转过来的,ide的差距很大的,所以...特意折腾了很久,结果还是没有VS的 '///' 好用 一.类头注释 打开file -> setting -> Editor -> Fil ...
- Angular动画
Angular动画基于W3C的Web Animations标准.不在Angular Core中了. 组件里面定义一个或多个触发器trigger,每个触发器有一系列的状态和过渡效果来实现. 动画其实就是 ...