Intl.DateTimeFormat.prototype.formatRange()

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 Methode formatRange() von Intl.DateTimeFormat-Instanzen formatiert einen Datumsbereich auf die knappste Weise, basierend auf den bei der Instanziierung dieses Intl.DateTimeFormat-Objekts angegebenen Sprachumgebungen und Optionen.

Probieren Sie es aus

Syntax

js
formatRange(startDate, endDate)

Parameter

startDate

Ein Date-Objekt, das den Beginn des Datumsbereichs darstellt.

endDate

Ein Date-Objekt, das das Ende des Datumsbereichs darstellt.

Rückgabewert

Ein String, der den angegebenen Datumsbereich formatiert gemäß der Lokalisierung und den Formatierungsoptionen dieses Intl.DateTimeFormat-Objekts darstellt.

Beispiele

Grundlegende Verwendung von formatRange

Diese Methode erhält zwei Dates und formatiert den Datumsbereich auf die knappste Weise, basierend auf dem bei der Instanziierung von Intl.DateTimeFormat angegebenen locale und den options.

js
const date1 = new Date(Date.UTC(1906, 0, 10, 10, 0, 0)); // Wed, 10 Jan 1906 10:00:00 GMT
const date2 = new Date(Date.UTC(1906, 0, 10, 11, 0, 0)); // Wed, 10 Jan 1906 11:00:00 GMT
const date3 = new Date(Date.UTC(1906, 0, 20, 10, 0, 0)); // Sat, 20 Jan 1906 10:00:00 GMT

const fmt1 = new Intl.DateTimeFormat("en", {
  year: "2-digit",
  month: "numeric",
  day: "numeric",
  hour: "numeric",
  minute: "numeric",
});
console.log(fmt1.format(date1)); // '1/10/06, 10:00 AM'
console.log(fmt1.formatRange(date1, date2)); // '1/10/06, 10:00 – 11:00 AM'
console.log(fmt1.formatRange(date1, date3)); // '1/10/06, 10:00 AM – 1/20/07, 10:00 AM'

const fmt2 = new Intl.DateTimeFormat("en", {
  year: "numeric",
  month: "short",
  day: "numeric",
});
console.log(fmt2.format(date1)); // 'Jan 10, 1906'
console.log(fmt2.formatRange(date1, date2)); // 'Jan 10, 1906'
console.log(fmt2.formatRange(date1, date3)); // 'Jan 10 – 20, 1906'

Spezifikationen

Specification
ECMAScript Internationalization API Specification
# sec-intl.datetimeformat.prototype.formatRange

Browser-Kompatibilität

BCD tables only load in the browser

Siehe auch