Intl.Locale

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2020.

Das Intl.Locale-Objekt ist eine standardmäßige eingebaute Eigenschaft des Intl-Objekts, die einen Unicode-Gebietskennung repräsentiert.

Probieren Sie es aus

Beschreibung

Das Intl.Locale-Objekt wurde erstellt, um eine einfachere Handhabung von Unicode-Gebieten zu ermöglichen. Unicode stellt Gebiete mit einem String dar, der als Locale-Identifier bezeichnet wird. Der Locale-Identifier besteht aus einem Sprach-Identifier und Erweiterungs-Tags. Sprach-Identifier sind der Kern des Gebiets, bestehend aus Sprache, Schrift und Region-Subtags. Zusätzliche Informationen über das Gebiet werden in den optionalen Erweiterungs-Tags gespeichert. Erweiterungs-Tags enthalten Informationen über Aspekte des Gebiets, wie Kalendertyp, Uhrzeittyp und Zahlensystemtyp.

Traditionell verwendete die Intl API Strings, um Gebiete zu repräsentieren, genau wie Unicode. Dies ist eine einfache und leichtgewichtige Lösung, die gut funktioniert. Die Einführung einer Locale-Klasse erleichtert jedoch das Parsen und Manipulieren der Sprache, Schrift und Region sowie Erweiterungs-Tags. Die folgenden Eigenschaften von Intl.Locale entsprechen den Unicode-Gebietskennung-Subtags:

Eigenschaft Entsprechendes Subtag
language language (erster Teil)
script script (zweiter Teil)
region region (zweiter/dritter Teil)
calendar ca (Erweiterung)
caseFirst kf (Erweiterung)
collation co (Erweiterung)
hourCycle hc (Erweiterung)
numberingSystem nu (Erweiterung)
numeric kn (Erweiterung)

Die obige Information wird exakt so bereitgestellt, wie sie ist, wenn das Locale-Objekt erstellt wird, ohne eine externe Datenbank zu konsultieren. Das Intl.Locale-Objekt bietet zusätzlich einige Methoden, die Informationen über die realen Informationen des Gebiets zurückgeben, wie verfügbare Kalender, Kollationen und Zahlensysteme.

Konstruktor

Intl.Locale()

Erstellt ein neues Locale-Objekt.

Instanz-Eigenschaften

Diese Eigenschaften sind auf Intl.Locale.prototype definiert und werden von allen Intl.Locale-Instanzen geteilt.

Intl.Locale.prototype.baseName

Gibt grundlegende, zentrale Informationen über das Locale in Form eines Substrings des vollständigen Daten-Strings zurück.

Intl.Locale.prototype.calendar

Gibt den Teil des Locale zurück, der die Kalenderepoche des Gebiets angibt.

Intl.Locale.prototype.caseFirst

Gibt zurück, ob Groß- und Kleinschreibung bei den Kollationsregeln des Gebiets berücksichtigt wird.

Intl.Locale.prototype.collation

Gibt den Kollationstyp für das Locale zurück, der verwendet wird, um Strings gemäß den Regeln des Gebiets zu ordnen.

Intl.Locale.prototype.constructor

Die Konstruktorfunktion, die das Instanzobjekt erstellt hat. Für Intl.Locale-Instanzen ist der anfängliche Wert der Intl.Locale Konstruktor.

Intl.Locale.prototype.hourCycle

Gibt das Zeitformatkonvention zurück, das vom Gebiet verwendet wird.

Intl.Locale.prototype.language

Gibt die Sprache zurück, die mit dem Gebiet verknüpft ist.

Intl.Locale.prototype.numberingSystem

Gibt das Zahlensystem zurück, das vom Gebiet verwendet wird.

Intl.Locale.prototype.numeric

Gibt zurück, ob das Gebiet eine spezielle Kollationsbehandlung für numerische Zeichen hat.

Intl.Locale.prototype.region

Gibt die Region der Welt (normalerweise ein Land) zurück, die mit dem Gebiet verknüpft ist.

Intl.Locale.prototype.script

Gibt die Schrift zurück, die für das Schreiben der speziellen Sprache verwendet wird, die im Gebiet verwendet wird.

Intl.Locale.prototype[Symbol.toStringTag]

Der anfängliche Wert der [Symbol.toStringTag] Eigenschaft ist der String "Intl.Locale". Diese Eigenschaft wird in Object.prototype.toString() verwendet.

Instanz-Methoden

Intl.Locale.prototype.getCalendars()

Gibt ein Array von verfügbaren Kalender-Identifikatoren zurück, gemäß den Regeln des Gebiets.

Intl.Locale.prototype.getCollations()

Gibt ein Array der Kollationstypen für das Locale zurück.

Intl.Locale.prototype.getHourCycles()

Gibt ein Array von Stundenzyklen-Identifikatoren zurück, die entweder den 12-Stunden-Clock ("h12"), den japanischen 12-Stunden-Clock ("h11"), den 24-Stunden-Clock ("h23") oder das unbenutzte Format "h24" anzeigen.

Intl.Locale.prototype.getNumberingSystems()

Gibt ein Array von Zahlensystem-Identifikatoren zurück, die gemäß den Regeln des Gebiets verfügbar sind.

Intl.Locale.prototype.getTextInfo()

Gibt den Teil zurück, der die Anordnung der Zeichen ltr (left-to-right) oder rtl (right-to-left) anzeigt.

Intl.Locale.prototype.getTimeZones()

Gibt ein Array von Zeitzonen-Identifikatoren zurück, die mit dem Locale verbunden sind.

Intl.Locale.prototype.getWeekInfo()

Gibt die UTS 35's Week Elements gemäß den Gebietsvorschriften zurück.

Intl.Locale.prototype.maximize()

Holt die wahrscheinlichsten Werte für die Sprache, Schrift und Region des Gebiets basierend auf vorhandenen Werten.

Intl.Locale.prototype.minimize()

Versucht, Informationen über das Gebiet zu entfernen, die durch den Aufruf von maximize() hinzugefügt würden.

Intl.Locale.prototype.toString()

Gibt den vollständigen Locale-Identifier-String des Gebiets zurück.

Beispiele

Grundlegende Nutzung

Im einfachsten Fall nimmt der Intl.Locale() Konstruktor einen Locale-Identifier-String als Argument:

js
const us = new Intl.Locale("en-US");

Verwendung des Locale-Konstruktors mit einem Optionsobjekt

Der Konstruktor nimmt auch ein optionales Konfigurationsobjekt-Argument, das eine beliebige Anzahl von Erweiterungstypen enthalten kann. Setzen Sie beispielsweise die hourCycle-Eigenschaft des Konfigurationsobjekts auf den gewünschten Stundenzyklentyp und übergeben Sie ihn dann dem Konstruktor:

js
const us12hour = new Intl.Locale("en-US", { hourCycle: "h12" });
console.log(us12hour.hourCycle); // Prints "h12"

Spezifikationen

Specification
ECMAScript Internationalization API Specification
# locale-objects

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch