如何使用 ES12 中的 Intl.DisplayNames API

阅读时长 4 分钟读完

在现代 Web 开发中,国际化是不可避免的需求。在不同的语言环境下,我们需要显示不同的语言和地区名称。ES12 中提供了 Intl.DisplayNames API,可以方便地获取不同语言和地区的名称,帮助我们实现国际化。

什么是 Intl.DisplayNames API

Intl.DisplayNames API 是 ES12 中新增的一个国际化 API,用于获取不同语言和地区的名称。它提供了两个构造函数:

  • Intl.DisplayNames:用于获取指定语言环境下的名称。
  • Intl.DisplayNames.supportedLocalesOf:用于获取支持的语言环境列表。

Intl.DisplayNames API 支持获取以下类型的名称:

  • 语言(language)
  • 脚本(script)
  • 地区(region)
  • 样式(style)
  • 单位(unit)

如何使用 Intl.DisplayNames API

下面我们将以获取不同语言环境下的地区名称为例,介绍如何使用 Intl.DisplayNames API。

1. 创建 Intl.DisplayNames 实例

首先,我们需要创建一个 Intl.DisplayNames 实例,用于获取指定语言环境下的地区名称。创建实例时,需要传入一个语言环境代码(locale),用于指定要获取的语言环境。语言环境代码由语言和地区组成,格式为 语言代码-地区代码,例如 en-US 表示英语(美国)。

上面代码创建了一个 typeregion 的 Intl.DisplayNames 实例,用于获取英语(美国)下的地区名称。

2. 获取地区名称

创建 Intl.DisplayNames 实例后,我们可以调用其 of 方法,获取指定地区的名称。该方法接受一个地区代码(value),用于指定要获取的地区。地区代码由两个字母组成,例如 CN 表示中国。

上面代码获取了中国的地区名称。

3. 获取支持的语言环境列表

Intl.DisplayNames API 还提供了 supportedLocalesOf 方法,用于获取支持的语言环境列表。该方法接受一个语言环境代码数组(locales),返回其中支持的语言环境代码数组。

上面代码获取了支持英语、中文和日语的语言环境列表。

示例代码

下面是一个完整的示例代码,演示如何使用 Intl.DisplayNames API 获取不同语言环境下的地区名称。

输出结果如下:

总结

Intl.DisplayNames API 是一个方便的国际化 API,可以帮助我们获取不同语言和地区的名称。在实际开发中,我们可以根据具体需求,选择不同的类型和语言环境,来获取相应的名称。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/655c356ad2f5e1655d64cd05

纠错
反馈