【JS 千分位】千分位的几种实现方式

【JS 千分位】千分位的几种实现方式日常开发中经常会遇见将金额进行千分位格式化的操作 今天来总结下几种常见的实现方式 推荐最后一种 无兼容性 while 正则实现 function formatCurren n 参数转字符串 n n toStrin

欢迎大家来到IT世界,在知识的湖畔探索吧!

日常开发中经常会遇见将金额进行千分位格式化的操作,今天来总结下几种常见的实现方式(推荐最后一种,无兼容性)

  1. while+正则实现
function formatCurrency(n) { //参数转字符串 n = n.toString(); //(-?\d+) 兼容负数 //(-?\d+) 没三位分组 let pattern = /(-?\d+)(\d{3})/; while (pattern.test(n)) { //遍历n,一直替换字符串,直到正则为false n = n.replace(pattern, "$1,$2"); } return n; } let num = ; console.log(formatCurrency(num));

欢迎大家来到IT世界,在知识的湖畔探索吧!

【JS 千分位】千分位的几种实现方式

  1. 正则+replace替换
欢迎大家来到IT世界,在知识的湖畔探索吧!function formatCurrency(n) { //?=(\d{3}) 正向匹配一个活多个三位数 //(?!\d) 负向查找,确保前面匹配的数字后面没有其他数字 //^(,)将第一个逗号替换为空 return n .toString() .replace(/(?=(\d{3})+(?!\d))/g, ",") .replace(/^(,)/g, "") ; } let num = ; console.log(formatCurrency(num));
【JS 千分位】千分位的几种实现方式

  1. for循环
//直接将参数转数组,然后倒序遍历数组 //三位分一组 //将每组的字符拼接 function formatCurrency (n) { let str = n.toString().split('') let characts=[],s=''; //倒序遍历数组 for(let i=str.length-1;i>=0;i--) { characts.unshift(str[i]) //三位分一组 //将每组的字符拼接 if(characts.length===3&&i!==0){ s += ','+characts.join('') characts=[] }else { if(i===0) { s = characts.join('')+s } } } return s } let num = ; console.log(formatCurrency(num));
【JS 千分位】千分位的几种实现方式

  1. toLocaleString,简单便捷
欢迎大家来到IT世界,在知识的湖畔探索吧!//无兼容性问题,可以直接使用 function formatCurrency (n) { return n.toLocaleString() } let num = ; console.log(formatCurrency(num));
【JS 千分位】千分位的几种实现方式

【JS 千分位】千分位的几种实现方式

浏览器兼容性

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://itzsg.com/83531.html

(0)

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们YX

mu99908888

在线咨询: 微信交谈

邮件:itzsgw@126.com

工作时间:时刻准备着!

关注微信