主要就是ToLocalString 方法的使用
style
格式化时使用的样式
“decimal”表示纯数字格式 , “currency”表示货币格式, 和"percent"表示百分比格式; 默认值是 “decimal”
currency
在货币格式化中使用的货币符号
“USD” 表示美元, “EUR” 表示欧元, "CNY"是人民币
没有默认值,如果样式是“currency”,必须提供货币属性. minimumFractionDigits
使用的小数位数的最小数目.可能的值是从0到20;默认为普通的数字和百分比格式为0;
1. 简单分割
var a = 39879787;
console.log(a.toLocaleString());
2. 后带百分比
var a = 39879787;
console.log(a.toLocaleString('zh', { style: 'percent' }));
3.格式化成金额
var a = 39879787;
console.log(a.toLocaleString('zh', { style: 'currency', currency: 'CNY' }));
console.log(a.toLocaleString('en', { style: 'currency', currency: 'USD' }));
4.限制位数,没有补0
minimumIntegerDigits:最少几位整数
minimumFractionDigits :最少几位小数
maximumFractionDigits:最多几位小数
var a = 39879787;
var b = 398.79787;
console.log(a.toLocaleString('zh', { minimumFractionDigits: 2}));
console.log(b.toLocaleString('zh', { minimumFractionDigits: 2,maximumFractionDigits: 2}));
js写法
//保留两位
var value = '3.4567823'
value.substring(0,value.indexOf('.')+3)
5.删除分隔符
var a = 39879787;
var b = 398.79787;
console.log(a.toLocaleString('zh', { minimumFractionDigits: 2, useGrouping: false}));
console.log(b.toLocaleString('zh', { minimumFractionDigits: 2,maximumFractionDigits: 2, useGrouping: false}));
6.格式化日期
const date = new Date();
console.log(date.toLocaleString('zh'));
console.log(date.toLocaleString('en'));
const date = new Date();
console.log(date.toLocaleString(‘zh’, { hour12: false }));
console.log(date.toLocaleString(‘en’, { hour12: false }));
7.特殊分割
const site = {
'in': 'en-IN', // 39,87,97,871
'id': 'id-ID', // 398.797.871
'us': 'en-US', // 398,797,871
'uk': 'en-GB', // 398,797,871
'es': 'es-ES', // 398.797.871
'fr': 'fr-FR', // 398 797 871
'it': 'it-IT', // 398.797.871
'ru': 'ru-RU', // 398 797 871
'hk': 'zh-HK', // 398,797,871
'tw': 'zh-TW' // 398,797,871
}
var a = 398797871;
for(var s in site){
console.log(a.toLocaleString(site[s]))
}