📜  JavaScript | BigInt.prototype.toLocaleString() 方法(1)

📅  最后修改于: 2023-12-03 15:31:39.070000             🧑  作者: Mango

JavaScript | BigInt.prototype.toLocaleString() 方法

BigInt.prototype.toLocaleString() 方法返回当前 BigInt 类型的字符串表示,采用本机环境的国际化格式。

语法
bigInt.toLocaleString([locales[, options]])
参数
  • locales 可选。一个字符串数组,代表一种或多种语言的 BCP 47 语言标记。
  • options 可选。用于配置输出格式的 Intl.NumberFormat 对象。
返回值

如果省略参数,则 toLocaleString() 的返回值当前的大整数的字符串表示。如果提供了 locales 参数,则该参数指定应该使用什么语言(和方言)的格式。

如果提供了一个 options 对象,则它描述了 NumberFormat 如何定制格式。例如,可设置小数点位置、通货符号、输出哪些位数以及是否将数字四舍五入到最接近的整数。

示例
// 示例1:
const largeNumber = 123456789012345678901234567890n;
console.log(largeNumber.toLocaleString()); // "1,234,567,890,123,456,789,012,345,678,901,234,567,890"

// 示例2:
const largeNumber2 = 9876543210987654321098765432109876543210n;
console.log(largeNumber2.toLocaleString('de-DE')); // "9876543210987654321098765432109876543210"
console.log(largeNumber2.toLocaleString('ar-EG')); // "٩٨٧٦٥٤٣٢١٠٩٨٧٦٥٤٣٢١٠٩٨٧٦٥٤٣٢١٠٩٨٧٦٥٤٣٢١٠٩٨٧٦٥٤٣٢١٠E+0" // 浏览器有可能不支持该选项

// 示例3:
const largeNumber3 = 1234567890123456789012345678901234567890123456789012345678901234567890n;
console.log(largeNumber3.toLocaleString('zh-Hans-CN-u-nu-hanidec')); // 一垓二千三百四十五京六千七百八十九兆零一百二十三亿四千五百六十七万八千九百零一亿二千三百四十五万六千七百八十九万零一百二十三万四千五百六十七亿八千九百零一万二千三百四十五

在上述示例中,toLocaleString 方法的第一个示例,只使用了 toLocaleString 方法的内置格式。第二个示例显示了如何显示不同区域设置的格式(德语和阿拉伯语),并显示浏览器是否支持特定区域设置。

第三个示例很有趣,因为它指定使用中文,同时进行数字转换,以采用中国的传统数字系统。

浏览器兼容性

| Chrome | Edge | Firefox | IE | Opera | Safari | | :-----:| :----: | :------: | :------: | :-----: | :-----: | | 67 | 79 | 68 | 不支持 | 54 | 13.1 |

参考链接