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):

Chrome IE Edge Firefox Safari Opera
Chrome IE Edge Firefox Safari Opera
支持 支持 支持 支持 支持 支持