js比较两个版本号,实现区分版本

753 阅读1分钟

实现一个方法用于比较两个版本号,满足以下要求 compareVersion("0.20.7", "0.20.8"),返回-1, compareVersion("0.20.9", "0.20.8"),返回 1, compareVersion("0.20.08", "0.20.8"),返回 0, compareVersion("0.20.08", "0.20.8.1"),返回-1, compareVersion("0.20.8.0.0", "0.20.8"),返回 0, compareVersion("0.20.8.1", "0.20.8"),返回 1, compareVersion("0.020", "0.20"),返回 0

```  compareVersion=(lastVersion,nextVersion)=>{ 
        console.log(lastVersion.split('.'))
        //通过点分割成数组,数组循环每一项去掉前面的0
        lastVersion =  lastVersion.split('.').map(((item,index)=>{
          return item.replace(/\b(0+)/gi,"")
        }))
        //通过点分割成数组,数组循环每一项去掉前面的0
        nextVersion = nextVersion.split('.').map(((item,index)=>{
          return item.replace(/\b(0+)/gi,"")
        }))
        console.log(lastVersion.toString().replace(/,/g,''))
        console.log(nextVersion.toString().replace(/,/g,''))
        //去掉逗号
        let next =  nextVersion.toString().replace(/,/g,'')
        let last = lastVersion.toString().replace(/,/g,'')
        console.log(next,last)
        return last>next?1:last==next?0:last<next?-1:'你是猪'
  }
```  componentWillMount() {
        console.log(this.compareVersion("0.20.7", "0.20.8"))
        console.log(this.compareVersion("0.20.9", "0.20.8"))
        console.log(this.compareVersion("0.20.08", "0.20.8"))
        console.log(this.compareVersion("0.20.08", "0.20.8.1"))
        console.log(this.compareVersion("0.20.8.0", "0.20.8"))
        console.log(this.compareVersion("0.20.8.1", "0.20.8"))
        console.log(this.compareVersion("0.020", "0.20"))
  }