JavaScript Number toLocaleString() 方法

定义和用法

toLocaleString() 使用本地语言格式将数字作为字符串返回。

语言格式取决于您计算机上的区域设置。

实例

例子 1

使用区域设置将数字格式化为字符串:

let num = 1000000;
let text = num.toLocaleString();

亲自试一试

例子 2

使用芬兰的特定语言环境将数字格式化为字符串:

let num = 1000000;
let text = num.toLocaleString("fi-FI");

亲自试一试

例子 3

使用美国的特定语言环境将数字格式化为货币字符串:

let num = 1000000;
let text = num.toLocaleString("en-US", {style:"currency", currency:"USD"});

亲自试一试

例子 4

使用 options 参数(对象)进行货币格式化:

let num = new Number(1000000);
const myObj = {
  style: "currency",
  currency: "EUR"
}
let text = num.toLocaleString("en-GB", myObj);

亲自试一试

例子 5

let num = new Number(1000000);
let text = num.toLocaleString("en-GB", {style:"currency", currency:"EUR"});

亲自试一试

例子 6

使用 JAPAN 的特定语言环境:

let num = 1000000;
let text = num.toLocaleString("ja-JP", {style:"currency", currency:"JPY"});

亲自试一试

语法

number.toLocaleString(locales, options)

参数

参数描述
locales可选。要使用的语言特定格式。请参见下表。
options可选。拥有格式选项的对象。请参见下表。

locales 参数可接受的值:

  • ar-SA 阿拉伯语(沙特阿拉伯)

  • bn-BD 孟加拉语(孟加拉国)

  • bn-IN 孟加拉语(印度)

  • cs-CZ 捷克语(捷克共和国)

  • da-DK 丹麦语(丹麦)

  • de-AT 奥地利德语

  • de-CH “瑞士”德语

  • de-DE 标准德语(在德国使用)

  • el-GR 现代希腊语

  • en-AU 澳大利亚英语

  • en-CA 加拿大英语

  • en-GB 英式英语

  • en-IE 爱尔兰英语

  • en-IN 印度英语

  • en-NZ 新西兰英语

  • en-US 美国英语

  • en-ZA 英语(南非)

  • es-AR 阿根廷西班牙语

  • es-CL 智利西班牙语

  • es-CO 哥伦比亚西班牙语

  • es-ES 卡斯蒂利亚西班牙语(在西班牙中北部使用)

  • es-MX 墨西哥西班牙语

  • es-US 美国西班牙语

  • fi-FI 芬兰语(芬兰)

  • fr-BE 比利时法语

  • fr-CA 加拿大法语

  • fr-CH “瑞士”法语

  • fr-FR 标准法语(尤其是在法国)

  • he-IL 希伯来语(以色列)

  • hi-IN 印地语(印度)

  • hu-HU 匈牙利语(匈牙利)

  • id-ID 印度尼西亚语(印度尼西亚)

  • it-CH “瑞士”意大利语

  • it-IT 标准意大利语(在意大利使用)

  • ja-JP 日语(日本)

  • ko-KR 韩语(大韩民国)

  • nl-BE 比利时荷兰语

  • nl-NL 标准荷兰语(荷兰语)

  • no-NO 挪威语(挪威)

  • pl-PL 波兰语(波兰)

  • pt-BR 巴西葡萄牙语

  • pt-PT 欧洲葡萄牙语(葡萄牙语书面和口语)

  • ro-RO 罗马尼亚语(罗马尼亚)

  • ru-RU 俄语(俄罗斯联邦)

  • sk-SK 斯洛伐克语(斯洛伐克)

  • sv-SE 瑞典语(瑞典)

  • ta-IN 印度泰米尔语

  • ta-LK 斯里兰卡泰米尔语

  • th-TH Thai(泰国)

  • tr-TR 土耳其语(土耳其)

  • zh-CN 中国大陆,简体字

  • zh-HK 香港,繁体字

  • zh-TW 台湾,繁体字

options 参数接受的选项:

选项
currency合法值:任何货币代码(如 "EUR", "USD", "INR" 等)
currencyDisplay

合法值:

  • "symbol"(默认)

  • "code"

  • "name"

localeMatcher

合法值:

  • "best-fit"(默认)

  • "lookup"

maximumFractionDigits从 0 到 20 的数字(默认为 3)
maximumSignificantDigits从 1 到 21 的数字(默认为 21)
minimumFractionDigits从 0 到 20 的数字(默认为 3)
minimumIntegerDigits从 1 到 21 的数字(默认为 1)
minimumSignificantDigits从 1 到 21 的数字(默认为 21)
style

合法值:

  • "currency"

  • "decimal"(默认)

  • "percent"

useGrouping

合法值:

  • "true"(默认)

  • "false"

返回值

类型描述
字符串表示本地格式数字的字符串。

技术细节

返回值

数字的字符串表示,由实现决定,根据本地规范进行格式化,可能影响到小数点或千分位分隔符采用的标点符号。

抛出

异常描述
TypeError调用该方法的对象不是 Number 时抛出的异常。

浏览器支持

toLocaleString() 是 ECMAScript3 (ES3) 特性。

所有浏览器都完全支持 ES3 (JavaScript 1999):

ChromeIEEdgeFirefoxSafariOpera
ChromeIEEdgeFirefoxSafariOpera
支持支持支持支持支持支持