GT ClassMethodsLocales

isSameDialect

API-Referenz zur GT-Methode isSameDialect

Übersicht

Die Methode isSameDialect prüft, ob mehrere BCP‑47‑Locale-Codes denselben Dialekt darstellen. Sie vergleicht die Sprach- und Regionskomponenten der Locale-Codes, um zu bestimmen, ob sie dieselbe sprachliche Varietät repräsentieren.


Referenzen

Parameter

Prop

Type

Parameterbeschreibung

ParameterBeschreibung
...localesVariable Anzahl von locale codes (Strings) oder Arrays von locale codes zum Vergleichen. Alle angegebenen locales müssen denselben Dialekt repräsentieren

Rückgabewert

booleantrue, wenn alle angegebenen locale codes denselben Dialekt repräsentieren, andernfalls false

Ausnahmen

Es werden keine Ausnahmen ausgelöst. Ungültige locale codes werden sauber behandelt und geben false zurück.


Verhalten

Logik zum Dialektvergleich

Die Methode nutzt folgende Logik, um die Gleichheit von Dialekten zu bestimmen:

  1. Locales normalisieren – Standardisiert alle eingegebenen locale codes
  2. Sprachcodes vergleichen – Alle locales müssen dieselbe Basissprache haben
  3. Regionale Hierarchie berücksichtigen – Eine Basissprache deckt ihre regionalen Varianten ab
  4. Exakte Dialektübereinstimmung – Regionale Varianten müssen exakt übereinstimmen

Hierarchieregeln

  • Die Basissprache ('en') deckt jede regionale Variante ab ('en-US', 'en-GB')
  • Regionale Varianten matchen nur bei exakter Übereinstimmung ('en-US''en-GB')
  • Skriptvarianten werden, sofern vorhanden, in den Vergleich einbezogen
  • Unterschiedliche Sprachen matchen nie ('en''es')

Flexible Eingaben

Die Methode akzeptiert:

  • Mehrere String-Argumente: isSameDialect('en-US', 'en-GB')
  • Arrays von Strings: isSameDialect(['en-US', 'en-GB'])
  • Gemischtes Format: isSameDialect('en-US', ['en-GB', 'en-CA'])
  • Einzelne Locale: isSameDialect('en-US') (gibt immer true zurück)

Beispiele

Grundlegender Dialektvergleich

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

// Exakt gleiche Dialekte
console.log(gt.isSameDialect('en-US', 'en-US')); // true
console.log(gt.isSameDialect('zh-CN', 'zh-CN')); // true

// Unterschiedliche Dialekte derselben Sprache
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

// Basissprache mit regionalen Varianten
console.log(gt.isSameDialect('en', 'en-US')); // true
console.log(gt.isSameDialect('es', 'es-ES')); // true
console.log(gt.isSameDialect('zh', 'zh-CN')); // true

// Verschiedene Sprachen
console.log(gt.isSameDialect('en-US', 'es-ES')); // false
console.log(gt.isSameDialect('fr-FR', 'de-DE')); // false

Hinweise

  • Verwendet standardisierte locale codes für präzise Vergleiche
  • Akzeptiert flexible Eingabeformate (Strings, Arrays, gemischt)

Nächste Schritte

Wie ist diese Anleitung?