GT ClassMethodsLocales
isSupersetLocale
GT isSupersetLocale 方法 API 参考
概览
isSupersetLocale 方法用于检查在 BCP-47 层级中,一个 locale 是否是另一个 locale 的超集。
超集 locale 更为通用,可作为更具体 locale 的 fallback 选项。
参考资料
参数
Prop
Type
返回值
boolean - 当且仅当 superLocale 是 subLocale 的超集时返回 true
示例
const gt = new GT();
// 基础语言是区域变体的超集
console.log(gt.isSupersetLocale('en', 'en-US')); // true
console.log(gt.isSupersetLocale('es', 'es-ES')); // true
console.log(gt.isSupersetLocale('zh', 'zh-CN')); // true
// 区域变体不是基础语言的超集
console.log(gt.isSupersetLocale('en-US', 'en')); // false
console.log(gt.isSupersetLocale('es-ES', 'es')); // false
// 相同的 locale
console.log(gt.isSupersetLocale('en-US', 'en-US')); // true
// 不同语言
console.log(gt.isSupersetLocale('en', 'es-ES')); // false备注
- 使用 BCP-47 locale 层级进行比较
- 一个 locale 始终是其自身的超集
- 基础语言是其区域变体的超集
- 对完全不同的语言返回 false
后续步骤
- 使用
isSameLanguage比较是否为同一语言 - 使用
isSameDialect比较是否为同一方言
本指南如何?