Intl.NumberFormat.prototype.formatRange()

The Intl.NumberFormat.prototype.formatRange() method formats a range of numbers according to the locale and formatting options of the Intl.NumberFormat object from which the method is called.

Syntax

formatRange(startRange, endRange)

Parameters

startRange

A Number or BigInt.

endRange

A Number or BigInt.

Exceptions

RangeError

Thrown if startRange is less than endRange, or either value is NaN.

TypeError

Thrown if either startRange or endRange is undefined.

Description

The formatRange getter function formats a range of numbers into a string according to the locale and formatting options of this Intl.NumberFormat object from which it is called.

Examples

Using formatRange

Use the formatRange getter function for formatting a range of currency values:

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"
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 €"

Specifications

Specification
Intl.NumberFormat
# sec-intl.numberformat.prototype.formatrange

Browser compatibility

BCD tables only load in the browser

See also