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 扩展与变体

后续步骤

本指南如何?