The formatRange()
method of Intl.DateTimeFormat
instances formats a date range in the most concise way based on the locales and options provided when instantiating this Intl.DateTimeFormat
object.
The formatRange()
method of Intl.DateTimeFormat
instances formats a date range in the most concise way based on the locales and options provided when instantiating this Intl.DateTimeFormat
object.
formatRange(startDate, endDate)
A string representing the given date range formatted according to the locale and formatting options of this Intl.DateTimeFormat
object.
This method receives two Date
s and formats the date range in the most concise way based on the locale
and options
provided when instantiating Intl.DateTimeFormat
.
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'
Specification |
---|
ECMAScript Internationalization API Specification # sec-intl.datetimeformat.prototype.formatRange |
Desktop | Mobile | Server | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | Deno | Node.js | ||
formatRange |
76 | 79 | 91 | 63 | 14.1 | 76 | 91 | 54 | 14.5 | 12.0 | 76 | 1.8 | 12.9.0Before version 13.0.0, only the locale data foren-US is available by default. See the DateTimeFormat() constructor for more details. |
© 2005–2023 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl/DateTimeFormat/formatRange