当判断两个版本号的时候,不能单纯的去点然后相互比较,版本比较可能比较特殊,但是分析起来又挺简单的,既然不能直接去点比较,
那就拆分成数组,一组一组对应的去比,为了能正常的进行比较 如果上一个版本长度小于当前版本设置的长度,则给上一个版本的数组追加一个值为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的更多相关文章

  1. 如何用js来判断浏览器类型(ie,firefox)等等

    现在网络上的浏览器,操作系统就象中国的方言一样,那个叫多啊!这给我们这些开发人员 带来了巨大的痛苦!虽然可能大家的喜好不同!用的系统也不同!有人喜欢用ie,有人喜欢用 firefox,还有人喜欢用腾讯 ...

  2. gulp为css,js添加版本号

    由于cdn缓存,更改样式后会有一段时间不生效,解决方法就是给css,js加上版本号效果如下: 1.安装gulp插件 npm install --save-dev gulp-rev (version:9 ...

  3. 给js加版本号解决浏览器缓存问题

    我们知道打开网页时浏览器会加载需要的资源,比如图片.音频.js文件.css文件等.并且会把这些资源作为缓存保存下来,再次打开网页时缓存好的资源就不需要再次加载了.但是,这样有一个问题,就是当程序猿更新 ...

  4. 关于Js添加版本号

    背景 在搜索引擎中搜索关键字.htaccess 缓存,你可以搜索到很多关于设置网站文件缓存的教程,通过设置可以将css.js等不太经常更新的文件缓存在浏览器端,这样访客每次访问你的网站的时候,浏览器就 ...

  5. js jquery版本号 金额千分之一转换功能(非规范,高效率)

    没想到js将没有 金额千分之一格处理器类型(例子:1,234.01 这种格公式).互联网搜索圈,我们使用的是常规方式.常规效率受宠若惊啊.和资源密集型,速度慢(虽然处理起来会很直观). 因此专门写一个 ...

  6. JS 实现版本号比较功能

    js实现一个客户端版本号的统计,目前该功能可以实现版本号中数字版本的统计,例如2.2.3 <2.2.3.1, 1.2.3<2.0.0,原理就是从高版本号到次版本号依次比较 if (!Arr ...

  7. (网页)css和js的版本号问题

    HTML页面自动清理js.css文件的缓存,之前用的是?v=11每次都要找寻到网页进行更改,非常的麻烦. <script type="text/javascript"> ...

  8. 添加js,css 版本号?v= hash

    node_modules设置 a.打开 node_modules\gulp-rev\index.js 第144行 manifest[originalFile] = revisionedFile; 更新 ...

  9. 根据js来判断手机是操作系安卓还是ios

    平常开发很常见的功能,在移动端需要根据javaScript来判断手机是安卓还是ios进行应用市场跳转. 通过js提供的Navigator可以来判断手机是安卓还是ios系统,代码如下 1.js判断是否为 ...

随机推荐

  1. Ueditor增加文字竖排显示和从右向左输入(支持蒙古文和维吾尔文)

    平时我们在ueditor中都是输入的中文,排版都是从左向右输入.但是当输入一些少数民民族言时,ueditor却不能正常显示. 例如蒙古文字,传统蒙文是竖排书写.如下图:传统蒙古文排文方式,<蒙古 ...

  2. Linux 使用 arp-scan 检查是否存在IP地址冲突

    如果前期没有做好IP地址规划,即使有IP地址统一不小心也会犯错!推荐服务器IP地址使用要登记明细,上次机房批量部署服务器,就将已再用的IP又分配给另一台服务器,还好对业务没有造成大的影响. 那么在给服 ...

  3. 如何使用npm构建一个react demo项目

    方法一: 1) 安装node.js环境  点我进入nodejs官网 1.1) 下载LTS(Long term support)版本,安装 1.2) 在cmd中使用以下命令查看node是否安装成功 no ...

  4. oracle wallet使用与维护

    oracle wallet使用与维护2015年05月26日 17:58:55 SilenceRiver 阅读数:1614oracle wallet使用与维护---oracle无密码登录分类: Orac ...

  5. javascript--实现几个简单的操作

    利用JS实现几个简单的功能 --还有省市联动,商品的左右选择,表单的校验.但在学了jQuery之后,感觉这个没那么重要了,就不写了 表格的全选和全不选 表格的动态隔行换色 <!DOCTYPE h ...

  6. 【java】字节码操作技术

    asm.javassist.cglib. 1.asm 比较底层,使用的visitor设计模式. 官网:https://asm.ow2.io/ 2.javassist 官网:http://www.jav ...

  7. webstorm Terminal 位置错乱解决方案

    win+R 打开终端,右击属性->勾选使用旧版控制台->确定 ,再重启webstrom 即可.

  8. eclipse 的缓存问题

    写这篇文章 如果能带给你帮助 不胜荣幸 ,如果有问题和其他的见解 也欢迎批评指正.只要不进行人身攻击都好说. 今天的用eclipse(sts)写项目时候发生了很多缓存事情(也可能不是缓存).最后解决的 ...

  9. PowerDesigner15连接Oracle数据库并导出Oracle的表结构

    PowerDesigner连接Oracle数据库,根据建立的数据源进行E-R图生成.详细步骤如下: 1.启动PowerDesigner 2.菜单:File->Reverse Engineer - ...

  10. jackson json转bean忽略没有的字段 not marked as ignorable

    @JsonIgnore注解用来忽略某些字段,可以用在Field或者Getter方法上,用在Setter方法时,和Filed效果一样.这个注解只能用在POJO存在的字段要忽略的情况,不能满足现在需要的情 ...