js把数字格式化为千分位兼容版,兼容小数(8,888.22)

站长软件开发2年前技术分享706
js把数字格式化为千分位兼容版,兼容小数(8,888.22)

js把任意数字格式化为千分位

/**
 * 格式化为千分位
 * @param num 当前值字符串
 * @returns 返回处理后的字符串
 * @isFixed 是否固定2位小数,默认固定
 */
function formatNum(num, isFixed = true) {
  if (
    (typeof num !== "string" && typeof num !== "number") ||
    num === "" ||
    num === null ||
    num === undefined ||
    num === "-"
  ) {
    return num;
  }
  let val = null;
  if (typeof num == "string") {
    val = Number(num).toFixed(2);
  } else {
    val = num.toFixed(2);
  }
 
  if (isFixed) {
    val = typeof num == "string" ? Number(num).toFixed(2) : num.toFixed(2);
  } else {
    val = Number(num || 0);
  }
  // 字符串转成数组
  val = val.toString().split(".");
  // \B 匹配非单词边界,两边都是单词字符或者两边都是非单词字符
  val[0] = val[0].replace(/\B(?=(\d{3})+(?!\d))/g, ",");
  // 数组转字符串
  val = val.join(".");
  // 返回结果
  return val;
}
console.log(formatNum(8888.11));//8,888.11


联系站长:

相关文章

js使用正则表达式获取html字符串中的img标签的src组成数组

js使用正则表达式获取html字符串中的img标签的src组成数组

js使用正则表达式获取html字符串中的img标签的src组成数组exec() 方法用于检索字符串中的正则表达式的匹配。如果字符串中有匹配的值返回该匹配值,否则返回 null。var htm...

js实用函数之map()函数的使用,一分钟学会

js实用函数之map()函数的使用,一分钟学会

重点:map() 方法定义在JavaScript的Array中,它返回一个新的数组,数组中的元素为原始数组调用函数处理后的值。值得注意的是:1、map()函数不会对空数组进行检测;2、map...

js获取m到n随机数,js获取随机整数,从0到10,从m到n任意数

js获取m到n随机数,js获取随机整数,从0到10,从m到n任意数

˂a class="reference-link" name="js获取从m到n的随机数"˃js获取从m到n的随机数function getRandomNumber(min, ma...

css显示三行文字,溢出显示省略号

css显示三行文字,溢出显示省略号

css显示三行文字,溢出显示省略号(显示任意行,可以把数字3替换成其他数字):.text-wrap {   display: -webkit-box; &n...

【简单一行】使用js去掉空格方法-原生js代码实现JavaScript

【简单一行】使用js去掉空格方法-原生js代码实现JavaScript

【简单一行】使用js去掉空格方法-原生js代码实现JavaScript str为要去除空格的字符串:1、去掉所有空格:str=str.replace(/\s+/g,"");  &...

js获取本月,本年,近一月,近3月,近1年的日期范围,获取近n月的日期范围

js获取本月,本年,近一月,近3月,近1年的日期范围,获取近n月的日期范围

js获取本月,本年,近一月,近3月,近1年的日期范围,获取近n月的日期范围function getnMonth(i) {   console.log(&quo...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。