JavaScript 将逗号添加到数字
Harshit Jindal
2023年1月30日
2021年3月21日
- 在 JavaScript 中使用正则表达式格式化带逗号的数字
-
在 JavaScript 中使用
Intl.NumberFormat()
用逗号格式化数字 -
在 JavaScript 中使用
toLocaleString()
来格式化带逗号的数字
本教程说明了如何在 JavaScript 中打印以逗号分隔的数字。
我们可以使用三种不同的方法,具体取决于我们的用例以及处理给定数字所需的速度/效率。
在 JavaScript 中使用正则表达式格式化带逗号的数字
正则表达式使用两个先行断言:
- 一个正向超前断言,它在字符串中搜索一个点,该点后包含一组三位数。
- 一个否定的超前断言,可确保给定点的组大小恰好为 3 位数。
然后替换表达式在该位置插入逗号。
它还通过在将正则表达式应用于小数点前的部分之前分割字符串来处理小数位。
const numb=213231221;
function separator(numb) {
var str = numb.toString().split(".");
str[0] = str[0].replace(/\B(?=(\d{3})+(?!\d))/g, ",");
return str.join(".");
}
console.log(separator(numb))
输出:
"213,231,221"
在 JavaScript 中使用 Intl.NumberFormat()
用逗号格式化数字
此方法用于以语言敏感格式表示数字,并根据提供的参数表示货币。提供的参数称为 locale
,并指定数字的格式。例如,en-IN
语言环境采用印度和英语的格式。从右起的第一个逗号分隔成千上万个,然后以百位数为单位。
我们将使用附加到 Intl.NumberFormat()
产生的对象上的 format()
函数。此函数接受数字并返回逗号分隔的字符串。要获得由千位分隔的字符串,我们可以使用 en-US
语言环境。
const givenNumber = 123423134231233423;
internationalNumberFormat = new Intl.NumberFormat('en-US')
console.log(internationalNumberFormat.format(givenNumber))
输出:
"123,423,134,231,233,420"
在 JavaScript 中使用 toLocaleString()
来格式化带逗号的数字
toLocaleString()
方法返回一个字符串,该字符串具有数字的语言敏感表示形式,就像上面的方法一样。它还采用指定数字格式的语言环境参数。
const givenNumber = 123423134231233423;
console.log(givenNumber.toLocaleString('en-US'))
输出:
"123,423,134,231,233,420"
所有主要的浏览器都支持所有这些方式。
Author: Harshit Jindal
Harshit Jindal has done his Bachelors in Computer Science Engineering(2021) from DTU. He has always been a problem solver and now turned that into his profession. Currently working at M365 Cloud Security team(Torus) on Cloud Security Services and Datacenter Buildout Automation.
LinkedIn