toLocaleString() 方法返回在特定语言环境下的表示字符串
Number.prototype.toLocaleString
语法
numObj.toLocaleString([locales [, options]])
参数
locales - 可选 缩写语言代码查询
options - 可选 包含一些或所有的下面属性的类 详情
可实现的需求
- 数字格式化为千分位展示
var number = 123456.789;
console.log(number.toLocaleString());
// 123,456.789
// 德国使用逗号作为小数分隔符,分位周期为千位
console.log(number.toLocaleString('de-DE'));
// 123.456,789
// 印度使用千位/拉克(十万)/克若尔(千万)分隔
console.log(number.toLocaleString('en-IN'));
// 1,23,456.789
// nu 扩展字段要求编号系统,e.g. 中文十进制
console.log(number.toLocaleString('zh-Hans-CN-u-nu-hanidec'));
// → 一二三,四五六.七八九
- 货币格式化
var number = 123456.789;
// 要求货币格式
console.log(number.toLocaleString('zh-CN', { style: 'currency', currency: 'CNY' }));
// ¥123,456.79
// 日元不使用小数位
console.log(number.toLocaleString('ja-JP', { style: 'currency', currency: 'JPY' }))
// ¥123,457
// 限制两位有效数字
console.log(number.toLocaleString('en-IN', { maximumSignificantDigits: 2 }));
// 1,23,00
Date.prototype.toLocaleString()
语法
dateObj.toLocaleString([locales [, options]])
参数
locales - 可选 缩写语言代码查询
options - 可选 包含一些或所有的下面属性的类 详情
可实现的需求
- 格式化时间
var date = new Date(2022, 1, 20, 15, 20, 20);
// 使用24小时制
console.log(date.toLocaleString("zh-CN", {hour12: false}));
// '2022/2/20 15:20:20'
//
console.log(date.toLocaleString('en-US'));
// '2/20/2022, 3:20:20 PM'