JavaScript Object.toLocaleString()

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 - 一个对象,用于设置一些属性以自定义字符串表示。

注意:Localesoptions 参数自定义了函数的行为,以根据语言或区域指定所需的格式约定。


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() 的结果。此方法旨在被派生对象为特定语言环境的目的而重写,尽管并非所有对象都会使用它。


另请阅读

你觉得这篇文章有帮助吗?

我们的高级学习平台,凭借十多年的经验和数千条反馈创建。

以前所未有的方式学习和提高您的编程技能。

试用 Programiz PRO
  • 交互式课程
  • 证书
  • AI 帮助
  • 2000+ 挑战