zoukankan      html  css  js  c++  java
  • 用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

      

      

  • 相关阅读:
    课堂作业04 2017.10.27
    课程作业 03 动手动脑 2017.10.20
    课程作业 03 2017.10.20
    HDU 3974 Assign the task
    POJ 2155 Matrix
    POJ 2481 Cows
    HDU 3038 How Many Answers Are Wrong
    CS Academy Array Removal
    POJ_1330 Nearest Common Ancestors LCA
    CF Round 427 D. Palindromic characteristics
  • 原文地址:https://www.cnblogs.com/bille/p/7641987.html
Copyright © 2011-2022 走看看