【UNI APP】APP版本号对比

APP的版本升级更新,会用到版本号的对比。
当后台推送新版本时,我需判断后台返回的版本号是否大于本地的版本号,大于,则进行跳转更新。
在这里插入图片描述

在util.js里面引入以下方法的代码:

	/*
	 * 版本号比较方法
	 * 传入两个字符串,当前版本号:curV;比较版本号:reqV
	 * 调用方法举例:compare("1.1","1.2"),将返回false
	 */
	static compare(curV, reqV) {
	  if (curV && reqV) {
	    //将两个版本号拆成数字
	    var arr1 = curV.split('.'),
	      arr2 = reqV.split('.');
	    var minLength = Math.min(arr1.length, arr2.length),
	      position = 0,
	      diff = 0;
	    //依次比较版本号每一位大小,当对比得出结果后跳出循环(后文有简单介绍)
	    while (position < minLength && ((diff = parseInt(arr1[position]) - parseInt(arr2[position])) == 0)) {
	      position++;
	    }
	    diff = (diff != 0) ? diff : (arr1.length - arr2.length);
	    //若curV大于reqV,则返回true
	    return diff > 0;
	  } else {
	    //输入为空
	    console.log("版本号不能为空");
	    return false;
	  }
	}
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值