首页 > 试题广场 >

判断版本

[编程题]判断版本
  • 热度指数:25451 时间限制:C/C++ 3秒,其他语言6秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
请补全JavaScript代码,该函数接收两个参数分别为旧版本、新版本,当新版本高于旧版本时表明需要更新,返回true,否则返回false。
注意:
1. 版本号格式均为"X.X.X"
2. X∈[0,9]
3. 当两个版本号相同时,不需要更新
<!DOCTYPE html>
<html>
    <head>
        <meta charset=utf-8>
    </head>
    <body>
       
        <script type="text/javascript">
            const _shouldUpdate = (oldVersion, newVersion) => {
                // 补全代码
                let olds=oldVersion.split('.')
                let news=newVersion.split('.')
                for(let i=0;i<olds.length;i++){
                    if(olds[i]!=news[i]){
                        return olds[i]<news[i]?true:false
                    }
                }
                return false
            }
        </script>
    </body>
</html>
发表于 2024-07-27 14:21:51 回复(0)
我用replaceAll先替换掉‘.’然后转换成数字,自己调试的都正确,为啥提交显示的是错误,帮帮孩子吧😥
const _shouldUpdate = (oldVersion, newVersion) => {
    // 补全代码
    let oldNum = +oldVersion.replaceAll('.', '')
    let newNum = +newVersion.replaceAll('.', '')
    return newNum>oldNum?true:false
    }


发表于 2023-06-13 12:29:51 回复(0)
const _shouldUpdate = (oldVersion, newVersion) => {
                // 补全代码
                let oldList = oldVersion.split('.').join('')
                let newList = newVersion.split('.').join('')
                if(newList>oldList){
                    return true
                }
                return false
            }

发表于 2023-05-09 00:16:10 回复(0)
return oldVersion.replace(/\./g, "") < newVersion.replace(/\./g, "")

发表于 2023-03-28 17:39:19 回复(0)
 const _shouldUpdate = (oldVersion, newVersion) => {
     // 补全代码
     const getNum = version => Number(version.match(/\d/g).join(''))
     const old = getNum(oldVersion)
     const newV = getNum(newVersion)
     return newV > old
 }

发表于 2023-03-12 10:37:59 回复(0)
const _shouldUpdate = (oldVersion, newVersion) => {
                // 补全代码
                console.log(oldVersion,newVersion)
                let oVersion = parseInt(oldVersion.split(".").join(""))
                let nVersion = parseInt(newVersion.split(".").join(""))
                // console.log(nVersion>oVersion)
                if(nVersion>oVersion){
                    // console.log(true)
                    return true
                }else{
                    return false
                }
            }

            _shouldUpdate("2.1.3","2.1.3")

发表于 2023-03-07 11:49:51 回复(0)
<!DOCTYPE html>
<html>
    <head>
        <meta charset=utf-8>
    </head>
    <body>
        
        <script type="text/javascript">
            const _shouldUpdate = (oldVersion, newVersion) => {
                // 补全代码
             var arr=    oldVersion.split('.')
             var arr1=   newVersion.split('.')
             console.log(arr,arr1)
             for(i=0;i<arr.length;i++){
                     var n=parseInt(arr[0]*100)+parseInt(arr[1]*10)+parseInt(arr[2])
                     var n1=parseInt(arr1[0]*100)+parseInt(arr1[1]*10)+parseInt(arr1[2])
             }
             if(n1>n)
             {return true}
             else if (n1==n){
               return '不需要更新呢'
             }
             else{return false}
            }


        </script>
    </body>
</html>
发表于 2023-03-02 17:29:17 回复(0)
const _shouldUpdate = (oldVersion, newVersion) => {
                oldVersion= parseInt(oldVersion.split('.').join(''));
                newVersion= parseInt(newVersion.split('.').join(''));
                if(newVersion>oldVersion){
                    return true;
                }else{
                    return false;
                }
 }
_shouldUpdate('1.0.0','1.0.1')
发表于 2023-02-16 15:53:10 回复(0)
     var n1=parseInt(oldVersion.split('.').join(''));
                var n2=parseInt(newVersion.split('.').join(''));
                if(n1<n2){
                    return true;
                }else{
                    return false;
                }
            }
发表于 2022-11-13 23:31:00 回复(0)
const _shouldUpdate = (oldVersion, newVersion) => {
                // 补全代码
                var a1,b1,c1 = oldVersion.split('.')
                var a2,b2,c2 = newVersion.split('.')
                return a2>a1|b2>b1|c2>c1 ? true: false 
            }
发表于 2022-11-13 15:47:02 回复(0)
  const _shouldUpdate = (oldVersion, newVersion) => {
                // 补全代码
                return oldVersion<newVersion
            }
发表于 2022-11-06 00:50:31 回复(0)
const _shouldUpdate = (oldVersion, newVersion) => {
                // 补全代码
                return newVersion>oldVersion
            }
他居然直接让我通过了?这样可以吗
发表于 2022-10-19 14:23:17 回复(0)
const _shouldUpdate = (oldVersion, newVersion) => {
                // 补全代码
                const oldArr = oldVersion.split('.');
                const newArr = newVersion.split('.');
                let temp = false;
                for (let index = 0; index < oldArr.length; index++) {
                   if (oldArr[index] < newArr[index]) {
                        temp = true
                      }
                }
                return temp;
            }
发表于 2022-10-18 10:37:13 回复(0)
不知道这样为啥没用,求大佬解答一下,自己在浏览器跑没问题,但是提交不了答案
<script>
  const _shouldUpdate = (oldVersion, newVersion) => {
    return Number(oldVersion.replaceAll('.','')) < Number(newVersion.replaceAll('.',''))
  }
  console.log(_shouldUpdate('1.2.4','1.3.4'))
</script>
发表于 2022-10-07 14:46:25 回复(0)
const _shouldUpdate = (oldVersion, newVersion) => {
                // 补全代码
                let reg=/(\d).(\d).(\d)/
                let arr1=reg.exec(oldVersion)
                let arr2=reg.exec(newVersion)
                for(let i=0;i<3;i++){
                    if(arr2[i]>arr1[i])
                        return true
                }
                return false
            }

发表于 2022-09-18 14:54:44 回复(0)
通过正则表达式来进行分割字符串
let strArr1 = oldVersion.match(/\d+(?=\.\d+)|(?<=\d+\.)\d+/g)
let strArr2 = newVersion.match(/\d+(?=\.\d+)|(?<=\d+\.)\d+/g)
与下面的效果一样
let strArr1 = oldVersion.split('.')
let strArr2 = newVersion.split('.')


发表于 2022-09-16 00:30:28 回复(0)
为什么我replaceAll就会报错,写replace就没问题
发表于 2022-09-03 15:12:29 回复(0)
<!DOCTYPE html>
<html>
    <head>
        <meta charset=utf-8>
    </head>
    <body>
        
        <script type="text/javascript">
            const _shouldUpdate = (oldVersion, newVersion) => {
                // 补全代码
                if(newVersion>oldVersion){
                    return true
                }else{
                    return false
                }
            }
        </script>
    </body>
</html>


这也通过了?
发表于 2022-08-31 20:13:05 回复(0)
for(var i =0;i<oldVersion.length;i++){
                    if(newVersion[i]>oldVersion[i]){
                        return true
                    }
                }return false
发表于 2022-08-26 20:54:17 回复(0)
 let a=oldVersion.replace('.','');
                let b=newVersion.replace('.','');
                return Number(b)>Number(a);
发表于 2022-08-25 11:43:33 回复(0)