下面是JS实现的4种数字千位符格式化方法分享的详细攻略。
1. 使用toLocaleString()
可以使用toLocaleString()方法来实现数字千位符格式化。这个方法是JavaScript内置的方法,可以将数字转化为本地字符串格式。
let num = 1234567.89;
console.log(num.toLocaleString()); //输出1,234,567.89
2. 使用正则表达式
除了使用本地方法,还可以使用正则表达式来实现数字千位符格式化。
function numberFormat(num) {
return num.toString().replace(/\B(?=(\d{3})+(?!\d))/g, ",");
}
let num = 1234567.89;
console.log(numberFormat(num)); //输出1,234,567.89
3. 使用Intl.NumberFormat()
也可以使用ES6中引入的Intl.NumberFormat()方法,这个方法可以更灵活地实现数字千位符格式化,支持自定义小数点和千位符分隔符。
let num = 1234567.89;
let formatter = new Intl.NumberFormat('en-US', {
minimumFractionDigits: 2,
maximumFractionDigits: 2
});
console.log(formatter.format(num)); //输出1,234,567.89
4. 使用递归
最后一种方法是使用递归来实现数字千位符格式化,具体实现是每隔3位就插入千位符,直到处理到整数部分结束。
function addCommas(num) {
if (num.length <= 3) {
return num;
} else {
return addCommas(num.slice(0, num.length - 3)) + ',' + num.slice(num.length - 3);
}
}
let num = '1234567.89';
console.log(addCommas(num)); //输出1,234,567.89
以上就是四种JS实现的数字千位符格式化方法,希望这篇攻略能对你有所帮助。
示例1:使用toLocaleString()方法对数字99999.99进行千位符格式化。
let num = 99999.99;
console.log(num.toLocaleString()); //输出99,999.99
示例2:使用递归方法对数字9876543210.1234进行千位符格式化。
function addCommas(num) {
if (num.length <= 3) {
return num;
} else {
return addCommas(num.slice(0, num.length - 3)) + ',' + num.slice(num.length - 3);
}
}
let num = '9876543210.1234';
console.log(addCommas(num)); //输出9,876,543,210.1234
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JS实现的4种数字千位符格式化方法分享 - Python技术站