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

站长软件开发2年前技术分享689
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


联系站长:

相关文章

【JavaScript】js获取当前年月日周

【JavaScript】js获取当前年月日周

【JavaScript】js获取当前年月日周function getcurtime(){     const addZero =...

fingerprintjs2使用方法,以及fingerprintjs2文件下载

fingerprintjs2使用方法,以及fingerprintjs2文件下载

fingerprintjs2使用方法,以及fingerprintjs2文件下载获取唯一标识,如果有技术问题可以联系站长官方教程:<script>   // ...

如何使用宝塔配置正向代理,例如:请求https://www.自己的域名.com/api,代理到https://www.别人的域名.com/api

如何使用宝塔配置正向代理,例如:请求https://www.自己的域名.com/api,代理到https://www.别人的域名.com/api

ngnix如何使用宝塔配置正向代理,例如:请求https://www.自己的域名.com/api, 代理到https://www.别人的域名.com/apilocation /baidu/&...

【简单一行】使用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...

发表评论    

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