【uniapp 开发】工具类 -- MathUtil

获取随机数

/*
    ** randomWord 产生任意长度随机字母数字组合
    ** randomFlag 是否任意长度 min 任意长度最小位[固定位数] max 任意长度最大位
    ** 
    ** 生成6—12位随机字符串 :randomWord(true,6,12)
    ** 生成随机的6位字符串 : randomWord(false,6) 
    */

    randomWord: function(randomFlag, min, max) {
      let str = "", range = min,
        arr = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9',
          'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l',
          'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z',
          'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L',
          'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z','-'];
          
        //'-','.','~','!','@','#','$','%','^','&','*','(',')','_',':','<','>','?'

      if (randomFlag) {
        range = Math.round(Math.random() * (max - min)) + min;// 任意长度
      }
      for (let i = 0; i < range; i++) {
        var pos = Math.round(Math.random() * (arr.length - 1));
        str += arr[pos];
      }
      return str;
    }
    

求和函数

 /**
 * 求和函数
 * @param arr
 * @returns {number}
 */
arySum: function(arr) {
     var ary = [];
     var result = 0;
     if(arr instanceof Array) {
          ary = arr;
     } else {
         ary = this.formArray(arr);
     };
     for(var i = 0; i < ary.length; i++) {
          result += parseFloat(ary[i]);
     };
     return result;
}       

数字格式化–三个数字一个逗号

//方法一
var num_s = "1232134456.546 ";
parseFloat(num_s).toLocaleString();

//方法二
function format_number(n){
   var b=parseInt(n).toString();
   var len=b.length;
   if(len<=3){return b;}
   var r=len%3;
   return r>0?b.slice(0,r)+","+b.slice(r,len).match(/\d{3}/g).join(","):b.slice(r,len).match(/\d{3}/g).join(",");
 }
 
var a="53669988.000";
alert(format_number(a));
alert(format_number("wahh"));
alert(format_number(0));
alert(format_number(6698.0023));


转载于:https://www.cnblogs.com/neo-java/p/11321362.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值