版本号的回显与拼接

版本号通常都是1.1.3这样的,但是传值往往会被限制为 int类型,这时候发请求时就需要转换,获取数据后需要回显。

// 拼接成数字版本号

    joinHandler(appVersion) {

      if (!appVersion) return appVersion;

      let str = '';

      let list = appVersion.split('.');

      list.map((item) => {

        if (!isNaN(parseInt(item))) {

          str += parseInt(item) > 9 ? parseInt(item) : '0' + parseInt(item);

        }

      });

      return str;

    },

    //分割成以点相连每段两个字符的版本号

    splitHandler(appVersion) {

      if (!appVersion) return appVersion;

      let str = appVersion.toString();

      let len = str.length;

      let list = [];

      if (len % 2 != 0) {

        str = '0' + str;

      }

      do {

        list.push(parseInt(str.substring(0, 2)));

        str = str.substring(2);

        len = str.length;

      } while (len >= 2);

      return list.join('.');

    },

另附固定三段式的方法

export const versionSplit3 = (versionNum) => {

  let str = '0.0.0';

  if (!versionNum || isNaN(parseInt(versionNum))) return versionNum;

  let one = parseInt(versionNum / 10000) || 0;

  let two = parseInt((versionNum % 10000) / 100) || 0;

  let three = parseInt(versionNum % 100) || 0;

  str = '' + one + '.' + two + '.' + three;

  return str;

};



export const versionJoin3 = (versionStr) => {

  let num = 0;

  if (!versionStr) return versionStr;

  let list = versionStr.split('.');

  let one = parseInt(list[0]) || 0;

  let two = parseInt(list[1]) || 0;

  let three = parseInt(list[2]) || 0;

  num = '' + (one * 10000 + two * 100 + three);

  return num;

};

发表评论

电子邮件地址不会被公开。 必填项已用*标注