Intl.supportedValuesOf()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2017.
Die statische Methode Intl.supportedValuesOf()
gibt ein Array mit den unterstützten Kalender-, Kollations-, Währungs-, Nummerierungssystem- oder Einheit-Werten zurück, die von der Implementierung unterstützt werden.
Duplikate werden weggelassen, und das Array wird in aufsteigender lexikografischer Reihenfolge sortiert (oder genauer gesagt, durch die Verwendung von Array.prototype.sort()
mit einer undefined
Vergleichsfunktion).
Die Methode kann verwendet werden, um zu testen, ob Werte in einer bestimmten Implementierung unterstützt werden, und gegebenenfalls nur dann ein Polyfill herunterzuladen. Sie kann auch verwendet werden, um Benutzeroberflächen zu erstellen, die es den Nutzern ermöglichen, ihre bevorzugten lokalen Werte auszuwählen, z. B. wenn die Benutzeroberfläche mit WebGL oder serverseitig erstellt wird.
Diese Methode ist lokalisierungsunabhängig: Es ist möglich, dass bestimmte Bezeichner nur in bestimmten lokalen Einstellungen unterstützt oder bevorzugt werden. Wenn Sie die bevorzugten Werte für eine spezifische lokale Einstellung ermitteln möchten, sollten Sie das Intl.Locale
-Objekt verwenden, z. B. Intl.Locale.prototype.getCalendars()
.
Probieren Sie es aus
console.log(Intl.supportedValuesOf("calendar"));
console.log(Intl.supportedValuesOf("collation"));
console.log(Intl.supportedValuesOf("currency"));
console.log(Intl.supportedValuesOf("numberingSystem"));
console.log(Intl.supportedValuesOf("timeZone"));
console.log(Intl.supportedValuesOf("unit"));
// Expected output: Array ['key'] (for each key)
try {
Intl.supportedValuesOf("someInvalidKey");
} catch (err) {
console.log(err.toString());
// Expected output: RangeError: invalid key: "someInvalidKey"
}
Syntax
Intl.supportedValuesOf(key)
Parameter
key
-
Ein Schlüsselstring, der die Kategorie der zurückzugebenden Werte angibt. Dieser ist einer der folgenden:
"calendar"
: siehe unterstützte Kalendertypen"collation"
: siehe unterstützte Kollationstypen"currency"
: siehe unterstützte Währungsbezeichner"numberingSystem"
: siehe unterstützte Nummerierungssystemtypen"timeZone"
: siehe unterstützte Zeitzonenbezeichner"unit"
: siehe unterstützte Einheitenbezeichner
Rückgabewert
Ein sortiertes Array mit einzigartigen Stringwerten, die die von der Implementierung unterstützten Werte für den gegebenen Schlüssel anzeigen. Die möglichen zurückgegebenen Werte sind unten aufgelistet.
Unterstützte Kalendertypen
Unten sind alle Werte aufgeführt, die Browser häufig für den Schlüssel calendar
unterstützen. Diese Werte können für die Option calendar
oder den ca
Unicode-Erweiterungsschlüssel bei der Erstellung von Objekten wie Intl.DateTimeFormat
und zur Erstellung von Temporal
-Datumsobjekten verwendet werden.
Wert | Beschreibung |
---|---|
buddhist |
Thailändischer buddhistischer Kalender |
chinese |
Traditioneller chinesischer Kalender |
coptic |
Koptischer Kalender |
dangi |
Traditioneller koreanischer Kalender |
ethioaa |
Äthiopischer Kalender, Amete Alem (Epoche ca. 5493 v. Chr.) |
ethiopic |
Äthiopischer Kalender, Amete Mihret (Epoche ca. 8 n. Chr.) |
gregory |
Gregorianischer Kalender |
hebrew |
Traditioneller hebräischer Kalender |
indian |
Indischer Kalender |
islamic |
Hijri-Kalender |
islamic-umalqura |
Hijri-Kalender, Umm al-Qura |
islamic-tbla |
Hijri-Kalender, tabellarisch (Schaltjahre [2,5,7,10,13,16,18,21,24,26,29] - astronomische Epoche) |
islamic-civil |
Hijri-Kalender, tabellarisch (Schaltjahre [2,5,7,10,13,16,18,21,24,26,29] - zivile Epoche) |
islamic-rgsa |
Hijri-Kalender, Saudi-Arabien-Sichtung |
iso8601 |
ISO-Kalender (Gregorianischer Kalender mit den Kalenderwochenvorschriften von ISO 8601) |
japanese |
Japanischer Kaiser-Kalender |
persian |
Persischer Kalender |
roc |
Republik-China-Kalender |
Die unten aufgeführten Typen sind in den CLDR-Daten spezifiziert, aber veraltet, werden nicht zum expliziten Gebrauch empfohlen und/oder können von Browsern aus verschiedenen Gründen nicht als unterstützt angezeigt werden. Vermeiden Sie die Verwendung dieser:
Wert | Beschreibung | Hinweise |
---|---|---|
islamicc
Veraltet
|
Ziviler (algorithmischer) arabischer Kalender. | Dies ist ein Alias für islamic-civil und wird daher nicht von supportedValuesOf() zurückgegeben. Verwenden Sie stattdessen islamic-civil . |
Referenzen:
Unterstützte Kollationstypen
Unten sind alle Werte aufgeführt, die Browser häufig für den Schlüssel collation
unterstützen. Diese Werte können für die Option collation
oder den co
Unicode-Erweiterungsschlüssel bei der Erstellung von Objekten wie Intl.Collator
verwendet werden.
Wert | Beschreibung |
---|---|
compat |
Eine ältere Version der Sortierregeln, zur Kompatibilität (für Arabisch) |
dict |
Wörterbuchstil-Sortierung (wie z. B. bei Singhalesisch). Wird auch als dictionary erkannt. |
emoji |
Empfohlene Sortierung für Emoji-Zeichen |
eor |
Europäische Sortierungsregeln |
phonebk |
Telefonbuchstil-Sortierung (wie z. B. bei Deutsch). Wird auch als phonebook erkannt. |
phonetic |
Phonetische Sortierung (Sortierung basierend auf Aussprache; für Lingala) |
pinyin |
Pinyin-Sortierung für Latein- und CJK-Zeichen (wird in Chinesisch verwendet) |
searchjl |
Spezieller Kollationstyp für koreanische Such-Funktionen nach Initialkonsonanten. Warnung: Diese Kollation ist nicht zur Sortierung gedacht, auch wenn sie nur mit Intl.Collator von usage: "sort" verwendet werden kann. |
// Aufgrund der Länge des Dokuments folgt die Fortsetzung mit ähnlichen Detaillierungsgrad.
Beispiele
Feature-Testing
Sie können prüfen, ob die Methode unterstützt wird, indem Sie mit undefined
vergleichen:
if (typeof Intl.supportedValuesOf !== "undefined") {
// method is supported
}
Alle Werte für einen Schlüssel abrufen
Um die unterstützten Werte für den Schlüssel calendar
zu erhalten, rufen Sie die Methode mit dem Schlüssel "calendar"
auf. Sie können dann durch das zurückgegebene Array iterieren, wie unten gezeigt:
Intl.supportedValuesOf("calendar").forEach((calendar) => {
// "buddhist", "chinese", "coptic", "dangi", etc.
});
Die anderen Werte werden auf die gleiche Weise abgerufen:
Intl.supportedValuesOf("collation").forEach((collation) => {
// "compat", "dict", "emoji", etc.
});
Intl.supportedValuesOf("currency").forEach((currency) => {
// "ADP", "AED", "AFA", "AFN", "ALK", "ALL", "AMD", etc.
});
Intl.supportedValuesOf("numberingSystem").forEach((numberingSystem) => {
// "adlm", "ahom", "arab", "arabext", "bali", etc.
});
Intl.supportedValuesOf("timeZone").forEach((timeZone) => {
// "Africa/Abidjan", "Africa/Accra", "Africa/Addis_Ababa", "Africa/Algiers", etc.
});
Intl.supportedValuesOf("unit").forEach((unit) => {
// "acre", "bit", "byte", "celsius", "centimeter", etc.
});
Ungültiger Schlüssel wirft RangeError
try {
Intl.supportedValuesOf("someInvalidKey");
} catch (err) {
//Error: RangeError: invalid key: "someInvalidKey"
}
Spezifikationen
Specification |
---|
ECMAScript® 2025 Internationalization API Specification # sec-intl.supportedvaluesof |
Browser-Kompatibilität
Report problems with this compatibility data on GitHubdesktop | mobile | server | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
supportedValuesOf |
Legend
Tip: you can click/tap on a cell for more information.
- Full support
- Full support