GT ClassMethodsLocales

standardizeLocale

GT standardizeLocale 方法的 API 参考

概览

standardizeLocale 方法会将 BCP-47 语言代码标准化,确保其格式和大小写正确。 它会把语言代码转换为规范的标准形式,便于与国际化 API 搭配使用,并在整个应用中保持一致性。


参考资料

参数

Prop

Type

参数说明

参数说明
locale要标准化的 BCP-47 语言代码。若未提供,则使用该实例的 targetLocale

返回

string - 标准化的 BCP-47 语言代码;如果输入无效,则返回空字符串

抛出

  • Error - 当未提供 locale 且该实例未配置 targetLocale

行为

应用的常见格式更正:

  • en_USen-US(下划线改为连字符)
  • zh_cnzh-CN(下划线改为连字符,并修正大小写)
  • EN-gben-GB(语言小写,地区大写)
  • Fr-cafr-CA(大小写全面规范)
  • ja_jpja-JP(下划线改为连字符,并修正大小写)

示例

const gt = new GT({
  sourceLocale: 'en',
  targetLocale: 'es-ES'
});

// 标准化各种locale格式
console.log(gt.standardizeLocale('en_us')); // "en-US"
console.log(gt.standardizeLocale('zh_cn')); // "zh-CN"
console.log(gt.standardizeLocale('EN-gb')); // "en-GB"
console.log(gt.standardizeLocale('fr-ca')); // "fr-CA"

// 已标准化的locale保持不变
console.log(gt.standardizeLocale('es-ES')); // "es-ES"
console.log(gt.standardizeLocale('ja-JP')); // "ja-JP"

说明

  • 将下划线转换为连字符,并规范大小写
  • 对无效的语言代码返回空字符串
  • 语言代码使用小写,地区代码使用大写
  • 在存在时保留 locale 的扩展和变体

后续步骤

这份指南怎么样?

standardizeLocale