Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

Intl.Locale

Baseline
Weitgehend verfügbar
*

Diese Funktion ist gut etabliert und funktioniert auf vielen Geräten und in vielen Browserversionen. Sie ist seit September 2020 browserübergreifend verfügbar.

* Einige Teile dieser Funktion werden möglicherweise unterschiedlich gut unterstützt.

Das Intl.Locale-Objekt ist eine standardmäßig integrierte Eigenschaft des Intl-Objekts und repräsentiert einen Unicode-Locale-Identifier.

Probieren Sie es aus

const korean = new Intl.Locale("ko", {
  script: "Kore",
  region: "KR",
  hourCycle: "h23",
  calendar: "gregory",
});

const japanese = new Intl.Locale("ja-Jpan-JP-u-ca-japanese-hc-h12");

console.log(korean.baseName, japanese.baseName);
// Expected output: "ko-Kore-KR" "ja-Jpan-JP"

console.log(korean.hourCycle, japanese.hourCycle);
// Expected output: "h23" "h12"

Beschreibung

Das Intl.Locale-Objekt wurde geschaffen, um die Arbeit mit Unicode-Locales zu erleichtern. Unicode stellt Locales durch Zeichenfolgen dar, die als Locale-Identifier bezeichnet werden. Ein Locale-Identifier besteht aus einem Sprach-Identifier und Erweiterungs-Tags. Sprach-Identifier bilden den Kern einer Locale und bestehen aus Subtags für Sprache, Schriftsystem, Region und Varianten. Zusätzliche Informationen über die Locale werden in den optionalen Erweiterungs-Tags gespeichert. Diese enthalten Angaben zu Aspekten wie Kalendertyp, Uhrzeitformat und Zahlensystem.

Traditionell verwendete die Intl-API wie Unicode Zeichenfolgen zur Darstellung von Locales. Das ist eine einfache und ressourcenschonende Lösung, die gut funktioniert. Eine Locale-Klasse erleichtert jedoch das Auslesen und Ändern von Sprache, Schriftsystem, Region und Erweiterungs-Tags. Die folgenden Eigenschaften von Intl.Locale entsprechen den Subtags eines Unicode-Locale-Identifiers:

Eigenschaft Entsprechender Subtag
language Sprach-ID, erster Teil
script Sprach-ID, Teil nach language
region Sprach-ID, Teil nach script
variants Sprach-ID, Teil nach region
calendar ca (Erweiterung)
caseFirst kf (Erweiterung)
collation co (Erweiterung)
hourCycle hc (Erweiterung)
numberingSystem nu (Erweiterung)
numeric kn (Erweiterung)

Die oben genannten Informationen werden beim Erstellen des Locale-Objekts unverändert übernommen, ohne eine externe Datenbank abzufragen. Das Intl.Locale-Objekt bietet darüber hinaus Methoden, die Informationen über die tatsächlichen Gegebenheiten einer Locale zurückgeben, etwa verfügbare Kalender, Kollationen und Zahlensysteme.

Konstruktor

Intl.Locale()

Erstellt ein neues Locale-Objekt.

Instanzeigenschaften

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

Intl.Locale.prototype.baseName

Gibt grundlegende Informationen über die Locale als Teilzeichenfolge des vollständigen Datenstrings zurück.

Intl.Locale.prototype.calendar

Gibt den Teil der Locale zurück, der ihren Kalendertyp angibt.

Intl.Locale.prototype.caseFirst

Gibt an, ob gemäß den Kollationsregeln der Locale Groß- oder Kleinbuchstaben zuerst sortiert werden.

Intl.Locale.prototype.collation

Gibt den Kollationstyp der Locale zurück, der zur Sortierung von Zeichenfolgen nach den Regeln der Locale verwendet wird.

Intl.Locale.prototype.constructor

Die Konstruktorfunktion, die das Instanzobjekt erstellt hat. Bei Intl.Locale-Instanzen ist der Anfangswert der Konstruktor Intl.Locale.

Intl.Locale.prototype.hourCycle

Gibt das in der Locale verwendete Uhrzeitformat zurück.

Intl.Locale.prototype.language

Gibt die der Locale zugeordnete Sprache zurück.

Intl.Locale.prototype.numberingSystem

Gibt das in der Locale verwendete Zahlensystem zurück.

Intl.Locale.prototype.numeric

Gibt an, ob die Locale eine besondere Kollationsbehandlung für numerische Zeichen vorsieht.

Intl.Locale.prototype.region

Gibt die der Locale zugeordnete Weltregion zurück (üblicherweise ein Land).

Intl.Locale.prototype.script

Gibt das Schriftsystem zurück, mit dem die Sprache der Locale geschrieben wird.

Intl.Locale.prototype.variants

Gibt die der Locale zugeordneten Varianten-Subtags zurück, etwa für unterschiedliche Rechtschreibungen.

Intl.Locale.prototype[Symbol.toStringTag]

Der Anfangswert der Eigenschaft [Symbol.toStringTag] ist die Zeichenfolge "Intl.Locale". Diese Eigenschaft wird von Object.prototype.toString() verwendet.

Instanzmethoden

Intl.Locale.prototype.getCalendars()

Gibt ein Array mit den nach den Regeln der Locale verfügbaren Kalender-Identifiern zurück.

Intl.Locale.prototype.getCollations()

Gibt ein Array mit den Kollationstypen der Locale zurück.

Intl.Locale.prototype.getHourCycles()

Gibt ein Array mit Identifiern für Uhrzeitformate zurück: für die 12-Stunden-Uhr ("h12"), die japanische 12-Stunden-Uhr ("h11"), die 24-Stunden-Uhr ("h23") oder das nicht verwendete Format "h24".

Intl.Locale.prototype.getNumberingSystems()

Gibt ein Array mit den nach den Regeln der Locale verfügbaren Zahlensystem-Identifiern zurück.

Intl.Locale.prototype.getTextInfo()

Gibt den Teil zurück, der die Schreibrichtung der Zeichen angibt: ltr (von links nach rechts) oder rtl (von rechts nach links).

Intl.Locale.prototype.getTimeZones()

Gibt ein Array mit Zeitzonen-Identifiern zurück, die der Locale zugeordnet sind.

Intl.Locale.prototype.getWeekInfo()

Gibt die Wochenelemente aus UTS 35 gemäß den Regeln der Locale zurück.

Intl.Locale.prototype.maximize()

Ermittelt anhand der vorhandenen Werte die wahrscheinlichsten Werte für Sprache, Schriftsystem und Region der Locale.

Intl.Locale.prototype.minimize()

Versucht, Informationen über die Locale zu entfernen, die durch einen Aufruf von maximize() wieder hinzugefügt würden.

Intl.Locale.prototype.toString()

Gibt den vollständigen Locale-Identifier der Locale als Zeichenfolge zurück.

Beispiele

Grundlegende Verwendung

In der einfachsten Form erhält der Konstruktor Intl.Locale() eine Zeichenfolge mit einem Locale-Identifier als Argument:

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

Verwendung des Locale-Konstruktors mit einem Optionsobjekt

Der Konstruktor akzeptiert außerdem ein optionales Konfigurationsobjekt, das verschiedene Erweiterungstypen enthalten kann. Setzen Sie beispielsweise die Eigenschaft hourCycle des Konfigurationsobjekts auf das gewünschte Uhrzeitformat und übergeben Sie das Objekt anschließend an den Konstruktor:

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

Spezifikationen

Spezifikation
ECMAScript® 2027 Internationalization API Specification
# locale-objects

Browser-Kompatibilität

Siehe auch