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.NumberFormat.prototype.formatRange()

Baseline
Weitgehend verfügbar

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

Die Methode formatRange() von Intl.NumberFormat-Instanzen formatiert einen Zahlenbereich entsprechend dem Gebietsschema und den Formatierungsoptionen dieses Intl.NumberFormat-Objekts.

Syntax

js
formatRange(startRange, endRange)

Parameter

startRange

Ein Number, BigInt oder String, der formatiert werden soll. Strings werden auf dieselbe Weise wie bei der Zahlenkonvertierung geparst. Allerdings verwendet formatRange() den exakten Wert, den der String darstellt, und vermeidet so einen Präzisionsverlust durch die implizite Konvertierung in eine Zahl.

endRange

Ein Number, BigInt oder String, der formatiert werden soll.

Rückgabewert

Ein String, der den angegebenen Zahlenbereich entsprechend dem Gebietsschema und den Formatierungsoptionen dieses Intl.NumberFormat-Objekts formatiert darstellt. Wenn Anfangs- und Endwert zum selben String formatiert werden, enthält die Ausgabe nur einen einzelnen Wert, möglicherweise mit einem vorangestellten Symbol für „ungefähr gleich“ (z. B. „~$3“). Ob dieses Symbol eingefügt wird, hängt ausschließlich von den Gebietsschemaeinstellungen ab. Es wird auch dann eingefügt, wenn startRange === endRange gilt.

Ausnahmen

RangeError

Wird ausgelöst, wenn startRange oder endRange NaN oder ein nicht konvertierbarer String ist.

TypeError

Wird ausgelöst, wenn startRange oder endRange undefined ist.

Beschreibung

Die Methode formatRange formatiert einen Zahlenbereich als String entsprechend dem Gebietsschema und den Formatierungsoptionen des Intl.NumberFormat-Objekts, auf dem sie aufgerufen wird.

Beispiele

formatRange verwenden

Verwenden Sie die Methode formatRange, um einen Bereich von Währungswerten zu formatieren:

js
const nf = new Intl.NumberFormat("en-US", {
  style: "currency",
  currency: "USD",
  maximumFractionDigits: 0,
});

console.log(nf.formatRange(3, 5)); // "$3 – $5"

// Note: the "approximately equals" symbol is added if
// startRange and endRange round to the same values.
console.log(nf.formatRange(2.9, 3.1)); // "~$3"
js
const nf = new Intl.NumberFormat("es-ES", {
  style: "currency",
  currency: "EUR",
  maximumFractionDigits: 0,
});

console.log(nf.formatRange(3, 5)); // "3-5 €"
console.log(nf.formatRange(2.9, 3.1)); // "~3 €"

Spezifikationen

Spezifikation
ECMAScript® 2027 Internationalization API Specification
# sec-intl.numberformat.prototype.formatrange

Browser-Kompatibilität

Siehe auch