询问JavaScript的Intl对象是否支持显示带定冠词的国家名称
结论
目前JavaScript内置的Intl标准API没有原生支持带定冠词的国家名称展示的配置选项。
具体说明
负责输出地区本地化名称的Intl.DisplayNames接口,在使用type: 'region'参数获取国家名称时,返回的是各语言下无定冠词的标准官方名称,不会自动添加对应语言的定冠词前缀。
可选替代方案
- 自行维护对应语言的带定冠词国家名称映射表:先通过
Intl.DisplayNames拿到基础国家名称,再匹配映射表为特定国家补充定冠词即可,比如英语场景下的荷兰、菲律宾,德语场景下的瑞士等都属于需要额外补充定冠词的常见国家。 - 基于Unicode CLDR的地名规则自行封装工具:CLDR数据集已经收录了全球绝大多数语言的带定冠词地名规则,你可以基于这部分规则封装自己的地名输出工具,实现定冠词自动拼接的效果。
目前ECMAScript标准中还没有公开的相关提案要为Intl新增该配置,短期内不会有原生支持的选项。
内容的提问来源于stack exchange,提问作者orustammanapov
相关产品推荐
相关产品推荐

