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.prototype.numeric

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.

Die numeric-Accessor-Eigenschaft von Intl.Locale-Instanzen gibt an, ob für diese Locale eine besondere Sortierbehandlung numerischer Zeichen gilt.

Beschreibung

Wie caseFirst stellt numeric eine Änderung der Sortierregeln dar, die von der Locale verwendet werden. numeric ist ein boolescher Wert und kann daher entweder true oder false sein. Wenn numeric auf false gesetzt ist, werden numerische Werte in Zeichenfolgen nicht besonders behandelt. Wenn numeric auf true gesetzt ist, berücksichtigt die Locale numerische Zeichen beim Sortieren von Zeichenfolgen. Diese besondere Behandlung bedeutet, dass Folgen von Dezimalziffern als Zahlen verglichen werden. Beispielsweise wird die Zeichenfolge „A-21“ als kleiner als „A-123“ betrachtet.

Der Wert der Eigenschaft numeric wird beim Erstellen festgelegt, entweder über den kn-Schlüssel des Locale-Identifikators oder über die Option numeric des Konstruktors Intl.Locale(). Die Option hat Vorrang, wenn beides angegeben ist. Ist keines von beiden angegeben, hat die Eigenschaft den Wert false.

Der Set-Accessor von numeric ist undefined. Sie können diese Eigenschaft nicht direkt ändern.

Beispiele

Wie andere Locale-Subtags kann der Wert von numeric dem Intl.Locale-Objekt über die Locale-Zeichenfolge oder über ein Konfigurationsobjekt als Argument des Konstruktors hinzugefügt werden.

Einen numeric-Wert über die Locale-Zeichenfolge hinzufügen

Gemäß der Spezifikation für Unicode-Locale-Zeichenfolgen ist numeric ein „Erweiterungs-Subtag“. Solche Subtags ergänzen Locale-Identifikatoren mithilfe des Erweiterungsschlüssels -u um zusätzliche Angaben zur Locale. Um der anfänglichen Locale-Zeichenfolge, die an den Konstruktor Intl.Locale() übergeben wird, einen numeric-Wert hinzuzufügen, fügen Sie zunächst den Erweiterungsschlüssel -u hinzu, falls er noch nicht vorhanden ist. Fügen Sie anschließend die Erweiterung -kn hinzu, um anzugeben, dass Sie einen Wert für numeric hinzufügen. Fügen Sie abschließend den Wert für numeric hinzu. Wenn Sie numeric auf true setzen möchten, genügt es, den Schlüssel kn hinzuzufügen. Um den Wert auf false zu setzen, müssen Sie nach dem Schlüssel kn ausdrücklich "false" angeben.

js
const locale = new Intl.Locale("fr-Latn-FR-u-kn-false");
console.log(locale.numeric); // false

Einen numeric-Wert über das Konfigurationsobjekt hinzufügen

Der Konstruktor Intl.Locale() akzeptiert optional ein Konfigurationsobjekt als Argument. Dieses kann verschiedene Erweiterungstypen enthalten, darunter numeric. Setzen Sie die Eigenschaft numeric des Konfigurationsobjekts auf den gewünschten numeric-Wert und übergeben Sie das Objekt anschließend an den Konstruktor.

js
const locale = new Intl.Locale("en-Latn-US", { numeric: true });
console.log(locale.numeric); // true

Spezifikationen

Spezifikation
ECMAScript® 2027 Internationalization API Specification
# sec-Intl.Locale.prototype.numeric

Browser-Kompatibilität

Siehe auch