javascript - Javascript数字格式到十进制
问题描述
我有一个关于十进制数的问题。我需要将我的数字转换为十进制,但我无法得到我真正想要的。
我想要的是:
- 我想将 130000 转换为 130,000 并将 20911.56 转换为 20,911,56 (等等)
首先,我在这里搜索并找到了一些更改我的号码的解决方案:
function number_format(string,decimals=2,decimal=',',thousands='.',pre='R$ ',pos=' Reais'){ var numbers = string.toString().match(/\d+/g).join([]); numbers = numbers.padStart(decimals+1, "0"); var splitNumbers = numbers.split("").reverse(); var mask = ''; splitNumbers.forEach(function(d,i){ if (i == decimals) { mask = decimal + mask; } if (i>(decimals+1) && ((i-2)%(decimals+1))==0) { mask = thousands + mask; } mask = d + mask; }); return pre + mask + pos; } var element = document.getElementById("format"); var money= number_format("130000",2,',','.'); element.innerHTML = money;
上面的代码给了我 20.911,56,但没有给我 130,000。相反,它是 1,300,00。我该怎么办?我不能同时拥有它们吗?
解决方案
只需Intl.NumberFormat
按如下方式使用:
const formatter = new Intl.NumberFormat('en');
console.log(formatter.format(130000)); // 130,000
console.log(formatter.format(20911.56)); // 20,911.56
推荐阅读
- java - Java RPS 游戏与回合
- mysql - 错误:握手不活动超时(MySQL + Node.js)
- python - 从父目录窗口运行子目录中的可执行文件
- reactjs - 在 React 中创建多个搜索条件
- javascript - Firebase 存储错误 403。在包含文件名时,我的上传功能的安全规则不断出现错误
- javascript - 正则表达式不会只删除一个字符的单词
- c - 如何在 C 中为二叉树编写打印函数
- python-3.x - 使用 Python 生成 6 个数字的随机序列有时会产生只有 5 个数字的结果
- c# - 问题 - 如果已经使用 asp net core Identityserver4 登录,如何避免显示登录页面?
- spring-boot - 如何使用 Configmap 构建映像