Object.toLocaleString()
方法返回对象的语言敏感字符串表示形式。
示例
const number = 123456.789;
// convert number to string with a language-sensitive
// representation for the Indian English locale
const numberString = number.toLocaleString('en-IN');
console.log(numberString);
// Output: 1,23,456.789
toLocaleString() 语法
toLocaleString()
方法的语法是
obj.toLocaleString(Locales, options)
在此,obj 是需要其语言特定字符串表示形式的对象。
toLocaleString() 参数
默认情况下,toLocaleString()
方法不接受任何参数。但是,它可以接受可选参数。
Locales
- 指定使用哪种语言格式,例如en-US
(美式英语)、en-IN
(印度英语) 等。options
- 一个对象,用于设置一些属性以自定义字符串表示。
注意:Locales
和 options
参数自定义了函数的行为,以根据语言或区域指定所需的格式约定。
toLocaleString() 返回值
toLocaleString()
方法返回一个表示该对象的字符串。
一些重写 Object.toLocaleString()
的对象
示例 1:JavaScript toLocaleString() 配合 Array
// create an array of three numbers
const arr = [4, 7, 10];
// converts to string in French currency format (Euros)
let string = arr.toLocaleString("fr", { style: "currency", currency: "EUR" });
console.log(string);
// Output: 4,00 €,7,00 €,10,00 €
在上面的示例中,toLocaleString()
将数组 arr 转换为法兰西语言环境的货币格式字符串,并使用欧元作为货币符号。
在上面的代码中,fr
代表法兰西语言环境,EUR
代表欧元。
示例 2:toLocaleString() 方法配合 Number
// create a number
const num = 123456.789;
// convert num to string in
// Indian English formatting convention
console.log(num.toLocaleString("en-IN"));
// India uses thousand / lakh / crore separators
// Output: 1,23,456.789
示例 3:toLocaleString() 方法配合 Date
// create a new date object
const date = new Date(Date.now());
console.log(date);
// Output: Fri Mar 03 2022 12:30:00 GMT-0800 (Pacific Standard Time)
// convert the date using German locale formatting convention
let dateStr = date.toLocaleString("de");
console.log(dateStr);
// Output: 29.7.2020, 15:37:00
注意:Object.toLocaleString()
方法通常返回 toString()
的结果。此方法旨在被派生对象为特定语言环境的目的而重写,尽管并非所有对象都会使用它。
另请阅读