isSameDialect
Référence de l’API de la méthode GT isSameDialect
Vue d’ensemble
La méthode isSameDialect vérifie si plusieurs codes de locale BCP-47 représentent le même dialecte.
Elle compare les composantes langue et région des codes de locale pour déterminer s’ils désignent la même variété linguistique.
Références
Paramètres
Prop
Type
Description des paramètres
| Paramètre | Description | 
|---|---|
| ...locales | Nombre variable de codes de locale (chaînes) ou de tableaux de codes de locale à comparer. Toutes les locales fournies doivent correspondre au même dialecte | 
Renvoie
boolean - true si tous les codes de locale fournis correspondent au même dialecte, false sinon
Exceptions
Aucune exception n’est levée. Les codes de locale invalides sont gérés correctement et renvoient false.
Comportement
Logique de comparaison des dialectes
La méthode suit la logique suivante pour déterminer l’égalité des dialectes :
- Normaliser les locales - Standardiser tous les codes de locale en entrée
- Comparer les codes de langue - Toutes les locales doivent partager la même langue de base
- Gérer la hiérarchie des régions - Une langue de base correspond à ses variantes régionales
- Correspondance exacte du dialecte - Les variantes régionales doivent correspondre exactement
Règles de hiérarchie
- La langue de base ('en') correspond à toute variante régionale ('en-US','en-GB')
- Les variantes régionales ne correspondent qu’en cas d’égalité stricte ('en-US'≠'en-GB')
- Les variantes d’écriture sont prises en compte dans la comparaison lorsqu’elles sont présentes
- Des langues différentes ne correspondent jamais ('en'≠'es')
Flexibilité des entrées
La méthode accepte :
- Plusieurs paramètres de type chaîne : isSameDialect('en-US', 'en-GB')
- Des tableaux de chaînes : isSameDialect(['en-US', 'en-GB'])
- Un format mixte : isSameDialect('en-US', ['en-GB', 'en-CA'])
- Une seule locale : isSameDialect('en-US')(retourne toujourstrue)
Exemples
Comparaison de base des dialectes
const gt = new GT({
  sourceLocale: 'en-US',
  localeCible: 'es-ES'
});
// Dialectes exactement identiques
console.log(gt.isSameDialect('en-US', 'en-US')); // true
console.log(gt.isSameDialect('zh-CN', 'zh-CN')); // true
// Dialectes différents de la même langue
console.log(gt.isSameDialect('en-US', 'en-GB')); // false
console.log(gt.isSameDialect('es-ES', 'es-MX')); // false
console.log(gt.isSameDialect('pt-PT', 'pt-BR')); // false
// Langue de base avec variantes régionales
console.log(gt.isSameDialect('en', 'en-US')); // true
console.log(gt.isSameDialect('es', 'es-ES')); // true
console.log(gt.isSameDialect('zh', 'zh-CN')); // true
// Langues différentes
console.log(gt.isSameDialect('en-US', 'es-ES')); // false
console.log(gt.isSameDialect('fr-FR', 'de-DE')); // falseNotes
- Utilise des codes de locale standardisés pour une comparaison précise
- Accepte des formats d’entrée flexibles (chaînes, tableaux, ou mixtes)
Prochaines étapes
- Comparer les langues avec isSameLanguage
- Vérifier la hiérarchie de locales avec isSupersetLocale
- Valider les locales avec isValidLocale
Que pensez-vous de ce guide ?

