Temporal
Limited availability
The Temporal
API allows you to work with dates, times, time zones, and durations. It is more powerful than the Date
API.
Compatibility (view on caniuse.com)
- Chrome ❌ See crbug.com/v8/11544
- Chrome Android ❌ See crbug.com/v8/11544
- Edge ❌ See crbug.com/v8/11544
- Firefox ❌ See bugzil.la/1519167
- Firefox for Android ❌ See bugzil.la/1519167
- Safari ❌ See webkit.org/b/223166
- Safari on iOS ❌ See webkit.org/b/223166
Specifications
BCD data
- javascript.builtins.Temporal
- javascript.builtins.Temporal.Calendar
- javascript.builtins.Temporal.Calendar.Calendar
- javascript.builtins.Temporal.Calendar.dateAdd
- javascript.builtins.Temporal.Calendar.dateFromFields
- javascript.builtins.Temporal.Calendar.dateUntil
- javascript.builtins.Temporal.Calendar.day
- javascript.builtins.Temporal.Calendar.dayOfWeek
- javascript.builtins.Temporal.Calendar.dayOfYear
- javascript.builtins.Temporal.Calendar.daysInMonth
- javascript.builtins.Temporal.Calendar.daysInWeek
- javascript.builtins.Temporal.Calendar.daysInYear
- javascript.builtins.Temporal.Calendar.era
- javascript.builtins.Temporal.Calendar.eraYear
- javascript.builtins.Temporal.Calendar.fields
- javascript.builtins.Temporal.Calendar.from
- javascript.builtins.Temporal.Calendar.id
- javascript.builtins.Temporal.Calendar.inLeapYear
- javascript.builtins.Temporal.Calendar.mergeFields
- javascript.builtins.Temporal.Calendar.month
- javascript.builtins.Temporal.Calendar.monthCode
- javascript.builtins.Temporal.Calendar.monthDayFromFields
- javascript.builtins.Temporal.Calendar.monthsInYear
- javascript.builtins.Temporal.Calendar.toJSON
- javascript.builtins.Temporal.Calendar.toString
- javascript.builtins.Temporal.Calendar.weekOfYear
- javascript.builtins.Temporal.Calendar.year
- javascript.builtins.Temporal.Calendar.yearMonthFromFields
- javascript.builtins.Temporal.Duration
- javascript.builtins.Temporal.Duration.Duration
- javascript.builtins.Temporal.Duration.abs
- javascript.builtins.Temporal.Duration.add
- javascript.builtins.Temporal.Duration.blank
- javascript.builtins.Temporal.Duration.compare
- javascript.builtins.Temporal.Duration.days
- javascript.builtins.Temporal.Duration.from
- javascript.builtins.Temporal.Duration.hours
- javascript.builtins.Temporal.Duration.microseconds
- javascript.builtins.Temporal.Duration.milliseconds
- javascript.builtins.Temporal.Duration.minutes
- javascript.builtins.Temporal.Duration.months
- javascript.builtins.Temporal.Duration.nanoseconds
- javascript.builtins.Temporal.Duration.negated
- javascript.builtins.Temporal.Duration.round
- javascript.builtins.Temporal.Duration.seconds
- javascript.builtins.Temporal.Duration.sign
- javascript.builtins.Temporal.Duration.subtract
- javascript.builtins.Temporal.Duration.toJSON
- javascript.builtins.Temporal.Duration.toLocaleString
- javascript.builtins.Temporal.Duration.toString
- javascript.builtins.Temporal.Duration.total
- javascript.builtins.Temporal.Duration.valueOf
- javascript.builtins.Temporal.Duration.weeks
- javascript.builtins.Temporal.Duration.with
- javascript.builtins.Temporal.Duration.years
- javascript.builtins.Temporal.Instant
- javascript.builtins.Temporal.Instant.Instant
- javascript.builtins.Temporal.Instant.add
- javascript.builtins.Temporal.Instant.compare
- javascript.builtins.Temporal.Instant.epochMicroseconds
- javascript.builtins.Temporal.Instant.epochMilliseconds
- javascript.builtins.Temporal.Instant.epochNanoseconds
- javascript.builtins.Temporal.Instant.epochSeconds
- javascript.builtins.Temporal.Instant.equals
- javascript.builtins.Temporal.Instant.from
- javascript.builtins.Temporal.Instant.fromEpochMicroseconds
- javascript.builtins.Temporal.Instant.fromEpochMilliseconds
- javascript.builtins.Temporal.Instant.fromEpochNanoseconds
- javascript.builtins.Temporal.Instant.fromEpochSeconds
- javascript.builtins.Temporal.Instant.round
- javascript.builtins.Temporal.Instant.since
- javascript.builtins.Temporal.Instant.subtract
- javascript.builtins.Temporal.Instant.toJSON
- javascript.builtins.Temporal.Instant.toLocaleString
- javascript.builtins.Temporal.Instant.toString
- javascript.builtins.Temporal.Instant.toZonedDateTime
- javascript.builtins.Temporal.Instant.toZonedDateTimeISO
- javascript.builtins.Temporal.Instant.until
- javascript.builtins.Temporal.Instant.valueOf
- javascript.builtins.Temporal.Now
- javascript.builtins.Temporal.Now.instant
- javascript.builtins.Temporal.Now.plainDate
- javascript.builtins.Temporal.Now.plainDateISO
- javascript.builtins.Temporal.Now.plainDateTime
- javascript.builtins.Temporal.Now.plainDateTimeISO
- javascript.builtins.Temporal.Now.timeZone
- javascript.builtins.Temporal.Now.zonedDateTime
- javascript.builtins.Temporal.Now.zonedDateTimeISO
- javascript.builtins.Temporal.PlainDate
- javascript.builtins.Temporal.PlainDate.PlainDate
- javascript.builtins.Temporal.PlainDate.add
- javascript.builtins.Temporal.PlainDate.calendar
- javascript.builtins.Temporal.PlainDate.compare
- javascript.builtins.Temporal.PlainDate.day
- javascript.builtins.Temporal.PlainDate.dayOfWeek
- javascript.builtins.Temporal.PlainDate.dayOfYear
- javascript.builtins.Temporal.PlainDate.daysInMonth
- javascript.builtins.Temporal.PlainDate.daysInWeek
- javascript.builtins.Temporal.PlainDate.daysInYear
- javascript.builtins.Temporal.PlainDate.equals
- javascript.builtins.Temporal.PlainDate.era
- javascript.builtins.Temporal.PlainDate.eraYear
- javascript.builtins.Temporal.PlainDate.from
- javascript.builtins.Temporal.PlainDate.getISOFields
- javascript.builtins.Temporal.PlainDate.inLeapYear
- javascript.builtins.Temporal.PlainDate.month
- javascript.builtins.Temporal.PlainDate.monthCode
- javascript.builtins.Temporal.PlainDate.monthsInYear
- javascript.builtins.Temporal.PlainDate.since
- javascript.builtins.Temporal.PlainDate.subtract
- javascript.builtins.Temporal.PlainDate.toJSON
- javascript.builtins.Temporal.PlainDate.toLocaleString
- javascript.builtins.Temporal.PlainDate.toPlainDateTime
- javascript.builtins.Temporal.PlainDate.toPlainMonthDay
- javascript.builtins.Temporal.PlainDate.toPlainYearMonth
- javascript.builtins.Temporal.PlainDate.toString
- javascript.builtins.Temporal.PlainDate.toZonedDateTime
- javascript.builtins.Temporal.PlainDate.until
- javascript.builtins.Temporal.PlainDate.valueOf
- javascript.builtins.Temporal.PlainDate.weekOfYear
- javascript.builtins.Temporal.PlainDate.with
- javascript.builtins.Temporal.PlainDate.withCalendar
- javascript.builtins.Temporal.PlainDate.year
- javascript.builtins.Temporal.PlainDateTime
- javascript.builtins.Temporal.PlainDateTime.PlainDateTime
- javascript.builtins.Temporal.PlainDateTime.add
- javascript.builtins.Temporal.PlainDateTime.calendar
- javascript.builtins.Temporal.PlainDateTime.compare
- javascript.builtins.Temporal.PlainDateTime.day
- javascript.builtins.Temporal.PlainDateTime.dayOfWeek
- javascript.builtins.Temporal.PlainDateTime.dayOfYear
- javascript.builtins.Temporal.PlainDateTime.daysInMonth
- javascript.builtins.Temporal.PlainDateTime.daysInWeek
- javascript.builtins.Temporal.PlainDateTime.daysInYear
- javascript.builtins.Temporal.PlainDateTime.equals
- javascript.builtins.Temporal.PlainDateTime.era
- javascript.builtins.Temporal.PlainDateTime.eraYear
- javascript.builtins.Temporal.PlainDateTime.from
- javascript.builtins.Temporal.PlainDateTime.getISOFields
- javascript.builtins.Temporal.PlainDateTime.hour
- javascript.builtins.Temporal.PlainDateTime.inLeapYear
- javascript.builtins.Temporal.PlainDateTime.microsecond
- javascript.builtins.Temporal.PlainDateTime.millisecond
- javascript.builtins.Temporal.PlainDateTime.minute
- javascript.builtins.Temporal.PlainDateTime.month
- javascript.builtins.Temporal.PlainDateTime.monthCode
- javascript.builtins.Temporal.PlainDateTime.monthsInYear
- javascript.builtins.Temporal.PlainDateTime.nanosecond
- javascript.builtins.Temporal.PlainDateTime.round
- javascript.builtins.Temporal.PlainDateTime.second
- javascript.builtins.Temporal.PlainDateTime.since
- javascript.builtins.Temporal.PlainDateTime.subtract
- javascript.builtins.Temporal.PlainDateTime.toJSON
- javascript.builtins.Temporal.PlainDateTime.toLocaleString
- javascript.builtins.Temporal.PlainDateTime.toPlainDate
- javascript.builtins.Temporal.PlainDateTime.toPlainMonthDay
- javascript.builtins.Temporal.PlainDateTime.toPlainTime
- javascript.builtins.Temporal.PlainDateTime.toPlainYearMonth
- javascript.builtins.Temporal.PlainDateTime.toString
- javascript.builtins.Temporal.PlainDateTime.toZonedDateTime
- javascript.builtins.Temporal.PlainDateTime.until
- javascript.builtins.Temporal.PlainDateTime.valueOf
- javascript.builtins.Temporal.PlainDateTime.weekOfYear
- javascript.builtins.Temporal.PlainDateTime.with
- javascript.builtins.Temporal.PlainDateTime.withCalendar
- javascript.builtins.Temporal.PlainDateTime.withPlainDate
- javascript.builtins.Temporal.PlainDateTime.withPlainTime
- javascript.builtins.Temporal.PlainDateTime.year
- javascript.builtins.Temporal.PlainMonthDay
- javascript.builtins.Temporal.PlainMonthDay.PlainMonthDay
- javascript.builtins.Temporal.PlainMonthDay.calendar
- javascript.builtins.Temporal.PlainMonthDay.day
- javascript.builtins.Temporal.PlainMonthDay.equals
- javascript.builtins.Temporal.PlainMonthDay.from
- javascript.builtins.Temporal.PlainMonthDay.getISOFields
- javascript.builtins.Temporal.PlainMonthDay.monthCode
- javascript.builtins.Temporal.PlainMonthDay.toJSON
- javascript.builtins.Temporal.PlainMonthDay.toLocaleString
- javascript.builtins.Temporal.PlainMonthDay.toPlainDate
- javascript.builtins.Temporal.PlainMonthDay.toString
- javascript.builtins.Temporal.PlainMonthDay.valueOf
- javascript.builtins.Temporal.PlainMonthDay.with
- javascript.builtins.Temporal.PlainTime
- javascript.builtins.Temporal.PlainTime.PlainTime
- javascript.builtins.Temporal.PlainTime.add
- javascript.builtins.Temporal.PlainTime.calendar
- javascript.builtins.Temporal.PlainTime.compare
- javascript.builtins.Temporal.PlainTime.equals
- javascript.builtins.Temporal.PlainTime.from
- javascript.builtins.Temporal.PlainTime.getISOFields
- javascript.builtins.Temporal.PlainTime.hour
- javascript.builtins.Temporal.PlainTime.microsecond
- javascript.builtins.Temporal.PlainTime.millisecond
- javascript.builtins.Temporal.PlainTime.minute
- javascript.builtins.Temporal.PlainTime.nanosecond
- javascript.builtins.Temporal.PlainTime.round
- javascript.builtins.Temporal.PlainTime.second
- javascript.builtins.Temporal.PlainTime.since
- javascript.builtins.Temporal.PlainTime.subtract
- javascript.builtins.Temporal.PlainTime.toJSON
- javascript.builtins.Temporal.PlainTime.toLocaleString
- javascript.builtins.Temporal.PlainTime.toPlainDateTime
- javascript.builtins.Temporal.PlainTime.toString
- javascript.builtins.Temporal.PlainTime.toZonedDateTime
- javascript.builtins.Temporal.PlainTime.until
- javascript.builtins.Temporal.PlainTime.valueOf
- javascript.builtins.Temporal.PlainTime.with
- javascript.builtins.Temporal.PlainYearMonth
- javascript.builtins.Temporal.PlainYearMonth.PlainYearMonth
- javascript.builtins.Temporal.PlainYearMonth.add
- javascript.builtins.Temporal.PlainYearMonth.calendar
- javascript.builtins.Temporal.PlainYearMonth.compare
- javascript.builtins.Temporal.PlainYearMonth.daysInMonth
- javascript.builtins.Temporal.PlainYearMonth.daysInYear
- javascript.builtins.Temporal.PlainYearMonth.equals
- javascript.builtins.Temporal.PlainYearMonth.era
- javascript.builtins.Temporal.PlainYearMonth.eraYear
- javascript.builtins.Temporal.PlainYearMonth.from
- javascript.builtins.Temporal.PlainYearMonth.getISOFields
- javascript.builtins.Temporal.PlainYearMonth.inLeapYear
- javascript.builtins.Temporal.PlainYearMonth.month
- javascript.builtins.Temporal.PlainYearMonth.monthCode
- javascript.builtins.Temporal.PlainYearMonth.monthsInYear
- javascript.builtins.Temporal.PlainYearMonth.since
- javascript.builtins.Temporal.PlainYearMonth.subtract
- javascript.builtins.Temporal.PlainYearMonth.toJSON
- javascript.builtins.Temporal.PlainYearMonth.toLocaleString
- javascript.builtins.Temporal.PlainYearMonth.toPlainDate
- javascript.builtins.Temporal.PlainYearMonth.toString
- javascript.builtins.Temporal.PlainYearMonth.until
- javascript.builtins.Temporal.PlainYearMonth.valueOf
- javascript.builtins.Temporal.PlainYearMonth.with
- javascript.builtins.Temporal.PlainYearMonth.year
- javascript.builtins.Temporal.TimeZone
- javascript.builtins.Temporal.TimeZone.TimeZone
- javascript.builtins.Temporal.TimeZone.from
- javascript.builtins.Temporal.TimeZone.getInstantFor
- javascript.builtins.Temporal.TimeZone.getNextTransition
- javascript.builtins.Temporal.TimeZone.getOffsetNanosecondsFor
- javascript.builtins.Temporal.TimeZone.getOffsetStringFor
- javascript.builtins.Temporal.TimeZone.getPlainDateTimeFor
- javascript.builtins.Temporal.TimeZone.getPossibleInstantsFor
- javascript.builtins.Temporal.TimeZone.getPreviousTransition
- javascript.builtins.Temporal.TimeZone.id
- javascript.builtins.Temporal.TimeZone.toJSON
- javascript.builtins.Temporal.TimeZone.toString
- javascript.builtins.Temporal.ZonedDateTime
- javascript.builtins.Temporal.ZonedDateTime.ZonedDateTime
- javascript.builtins.Temporal.ZonedDateTime.add
- javascript.builtins.Temporal.ZonedDateTime.calendar
- javascript.builtins.Temporal.ZonedDateTime.compare
- javascript.builtins.Temporal.ZonedDateTime.day
- javascript.builtins.Temporal.ZonedDateTime.dayOfWeek
- javascript.builtins.Temporal.ZonedDateTime.dayOfYear
- javascript.builtins.Temporal.ZonedDateTime.daysInMonth
- javascript.builtins.Temporal.ZonedDateTime.daysInWeek
- javascript.builtins.Temporal.ZonedDateTime.daysInYear
- javascript.builtins.Temporal.ZonedDateTime.epochMicroseconds
- javascript.builtins.Temporal.ZonedDateTime.epochMilliseconds
- javascript.builtins.Temporal.ZonedDateTime.epochNanoseconds
- javascript.builtins.Temporal.ZonedDateTime.epochSeconds
- javascript.builtins.Temporal.ZonedDateTime.equals
- javascript.builtins.Temporal.ZonedDateTime.era
- javascript.builtins.Temporal.ZonedDateTime.eraYear
- javascript.builtins.Temporal.ZonedDateTime.from
- javascript.builtins.Temporal.ZonedDateTime.getISOFields
- javascript.builtins.Temporal.ZonedDateTime.hour
- javascript.builtins.Temporal.ZonedDateTime.hoursInDay
- javascript.builtins.Temporal.ZonedDateTime.inLeapYear
- javascript.builtins.Temporal.ZonedDateTime.microsecond
- javascript.builtins.Temporal.ZonedDateTime.millisecond
- javascript.builtins.Temporal.ZonedDateTime.minute
- javascript.builtins.Temporal.ZonedDateTime.month
- javascript.builtins.Temporal.ZonedDateTime.monthCode
- javascript.builtins.Temporal.ZonedDateTime.monthsInYear
- javascript.builtins.Temporal.ZonedDateTime.nanosecond
- javascript.builtins.Temporal.ZonedDateTime.offset
- javascript.builtins.Temporal.ZonedDateTime.offsetNanoseconds
- javascript.builtins.Temporal.ZonedDateTime.round
- javascript.builtins.Temporal.ZonedDateTime.second
- javascript.builtins.Temporal.ZonedDateTime.since
- javascript.builtins.Temporal.ZonedDateTime.startOfDay
- javascript.builtins.Temporal.ZonedDateTime.subtract
- javascript.builtins.Temporal.ZonedDateTime.timeZone
- javascript.builtins.Temporal.ZonedDateTime.toInstant
- javascript.builtins.Temporal.ZonedDateTime.toJSON
- javascript.builtins.Temporal.ZonedDateTime.toLocaleString
- javascript.builtins.Temporal.ZonedDateTime.toPlainDate
- javascript.builtins.Temporal.ZonedDateTime.toPlainDateTime
- javascript.builtins.Temporal.ZonedDateTime.toPlainMonthDay
- javascript.builtins.Temporal.ZonedDateTime.toPlainTime
- javascript.builtins.Temporal.ZonedDateTime.toPlainYearMonth
- javascript.builtins.Temporal.ZonedDateTime.toString
- javascript.builtins.Temporal.ZonedDateTime.until
- javascript.builtins.Temporal.ZonedDateTime.valueOf
- javascript.builtins.Temporal.ZonedDateTime.weekOfYear
- javascript.builtins.Temporal.ZonedDateTime.with
- javascript.builtins.Temporal.ZonedDateTime.withCalendar
- javascript.builtins.Temporal.ZonedDateTime.withPlainDate
- javascript.builtins.Temporal.ZonedDateTime.withPlainTime
- javascript.builtins.Temporal.ZonedDateTime.withTimeZone
- javascript.builtins.Temporal.ZonedDateTime.year