Menu
×
   ❮     
HTML CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C C++ C# BOOTSTRAP REACT MYSQL JQUERY EXCEL XML DJANGO NUMPY PANDAS NODEJS DSA TYPESCRIPT ANGULAR ANGULARJS GIT POSTGRESQL MONGODB ASP AI R GO KOTLIN SWIFT SASS VUE GEN AI SCIPY AWS CYBERSECURITY DATA SCIENCE INTRO TO PROGRAMMING INTRO TO HTML & CSS BASH RUST

JS Reference

JS by Category JS by Alphabet

JavaScript

JS Arrays JS Boolean JS Classes JS Dates JS Function JS Error JS Global JS Iterators JS JSON JS Maps JS Math JS Numbers JS Objects JS Operators JS Assignment JS Arithmetic JS Comparison JS Logical Operators JS Bitwise Operators JS Misc Operators JS Precedence JS Promises JS Proxy JS Reflect JS RegExp Patterns JS RegExp Reference JS Sets JS Statements JS Strings JS Temporal JS Temporal.Duration JS Temporal.Instant JS Temporal.Now JS Temporal.PlainDate JS Temporal.PlainDateTime JS Temporal.PlainTime JS Temporal.ZonedDate JS Typed Arrays JS Typed Reference

Window

Window Object Window Console Window History Window Location Window Navigator Window Screen

HTML DOM

HTML Documents HTML Elements HTML Attributes HTML Collection HTML NodeList HTML DOMTokenList HTML Styles
alignContent alignItems alignSelf animation animationDelay animationDirection animationDuration animationFillMode animationIterationCount animationName animationTimingFunction animationPlayState background backgroundAttachment backgroundClip backgroundColor backgroundImage backgroundOrigin backgroundPosition backgroundRepeat backgroundSize backfaceVisibility border borderBottom borderBottomColor borderBottomLeftRadius borderBottomRightRadius borderBottomStyle borderBottomWidth borderCollapse borderColor borderImage borderImageOutset borderImageRepeat borderImageSlice borderImageSource borderImageWidth borderLeft borderLeftColor borderLeftStyle borderLeftWidth borderRadius borderRight borderRightColor borderRightStyle borderRightWidth borderSpacing borderStyle borderTop borderTopColor borderTopLeftRadius borderTopRightRadius borderTopStyle borderTopWidth borderWidth bottom boxShadow boxSizing captionSide caretColor clear clip color columnCount columnFill columnGap columnRule columnRuleColor columnRuleStyle columnRuleWidth columns columnSpan columnWidth counterIncrement counterReset cssFloat cursor direction display emptyCells filter flex flexBasis flexDirection flexFlow flexGrow flexShrink flexWrap font fontFamily fontSize fontStyle fontVariant fontWeight fontSizeAdjust height isolation justifyContent left letterSpacing lineHeight listStyle listStyleImage listStylePosition listStyleType margin marginBottom marginLeft marginRight marginTop maxHeight maxWidth minHeight minWidth objectFit objectPosition opacity order orphans outline outlineColor outlineOffset outlineStyle outlineWidth overflow overflowX overflowY padding paddingBottom paddingLeft paddingRight paddingTop pageBreakAfter pageBreakBefore pageBreakInside perspective perspectiveOrigin position quotes resize right scrollBehavior tableLayout tabSize textAlign textAlignLast textDecoration textDecorationColor textDecorationLine textDecorationStyle textIndent textOverflow textShadow textTransform top transform transformOrigin transformStyle transition transitionProperty transitionDuration transitionTimingFunction transitionDelay unicodeBidi userSelect verticalAlign visibility width wordBreak wordSpacing wordWrap widows zIndex

HTML Events

HTML Events HTML Event Objects HTML Event Properties HTML Event Methods

Web APIs

API Canvas API Console API Fetch API Fullscreen API Geolocation API History API MediaQueryList API Storage API Validation API Web

HTML Objects

<a> <abbr> <address> <area> <article> <aside> <audio> <b> <base> <bdo> <blockquote> <body> <br> <button> <canvas> <caption> <cite> <code> <col> <colgroup> <datalist> <dd> <del> <details> <dfn> <dialog> <div> <dl> <dt> <em> <embed> <fieldset> <figcaption> <figure> <footer> <form> <head> <header> <h1> - <h6> <hr> <html> <i> <iframe> <img> <ins> <input> button <input> checkbox <input> color <input> date <input> datetime <input> datetime-local <input> email <input> file <input> hidden <input> image <input> month <input> number <input> password <input> radio <input> range <input> reset <input> search <input> submit <input> text <input> time <input> url <input> week <kbd> <label> <legend> <li> <link> <map> <mark> <menu> <menuitem> <meta> <meter> <nav> <object> <ol> <optgroup> <option> <output> <p> <param> <pre> <progress> <q> <s> <samp> <script> <section> <select> <small> <source> <span> <strong> <style> <sub> <summary> <sup> <table> <tbody> <td> <tfoot> <th> <thead> <tr> <textarea> <time> <title> <track> <u> <ul> <var> <video>

Other References

CSSStyleDeclaration JS Conversion


JavaScript Temporal

JavaScript Temporal Reference

Revised March 2026

Temporal objects are the core part of the JavaScript Temporal API which aims to replace the old JavaScript Date object.

New to JavaScript Temporal Dates?

Visit Our JavaScript Temporal Date Tutorial

Temporal Objects

ObjectDescription
Temporal.DurationLength of time (days, hours, minutes)
Temporal.NowCurrent time (UTC timestamp)
Temporal.InstantA fixed point in time (UTC), independent of time zone
Temporal.ZonedDateTimeDate and time in a specific time zone
Plain Dates
Temporal.PlainDateCalendar date only (2026-05-21)
Temporal.PlainTimeTime of day only (14:30:00)
Temporal.PlainDateTimeFull date and time (2026-01-24 14:30:00)
Temporal.PlainYearMonthYear and month only (2026-05)
Temporal.PlainMonthDayMonth and day only (05-01)
Temporal Map

Note

All Temporal objects are immutable.

This prevent bugs related to accidental modification of time values.


The Temporal.Duration Object

The Temporal.Duration object represents a length of time like 7 days and 1 hour.

The Temporal.Duration object makes date arithmetic clear, readable, and safer than using manual millisecond calculations.


Temporal.Duration Properties

The Temporal.Duration object has 12 properties of time information.

Example

const duration = new Temporal.Duration(0, 0, 0, 7, 2, 0);
Try it Yourself »

Temporal.Now

The Temporal.Now object has methods for getting the current time in various formats.

Use the Temporal.Now.zonedDateTimeISO() method for current system time:

Example

const now = Temporal.Now.zonedDateTimeISO();
Try it Yourself »

Use the Temporal.Now.plainDateISO() method for calender date only:

Example

const today = Temporal.Now.plainDateISO();
Try it Yourself »

The Temporal.Instant Object

The Temporal.Instant object represents a single point in time.

Temporal.Instant has no time zone or calendar.

Temporal.Instant stores a count of nanoseconds since the Unix epoch: January 1, 1970 00:00:00

Note

Nanosecond precision is 1000 times higher than the millisecond precision of the old Date object.

Example

let instant = Temporal.Instant.from("2026-05-17T14:30:00Z");
Try it Yourself »

Temporal.ZonedDateTime

A Temporal.ZonedDateTime is a timezone and calendar-aware date/time object that represents a real time event from the perspective of a particular region on Earth.

Example: December 7th, 1995 at 3:24 AM in US Pacific time (in Gregorian calendar).

Example

const zonedDate = Temporal.ZonedDateTime.from({
  timeZone: 'America/Los_Angeles',
  year: 1995,
  month: 12,
  day: 7,
  hour: 3,
  minute: 24,
  second: 30,
  millisecond: 0,
  microsecond: 3,
  nanosecond: 500
});
Try it Yourself »

The Temporal.ZonedDateTime object is optimized for cases that require a time zone, DST-safe arithmetic and interoperability with an RFC 5545 calendar.


Temporal Plain Objects

ObjectDescription
Temporal.PlainDateCalendar date only (2026-05-21)
Temporal.PlainTimeTime of day only (14:30:00)
Temporal.PlainMonthDayMonth and day only (05-01)
Temporal.PlainYearMonthYear and month only (2026-05)

The Temporal.PlainDate Object

The Temporal.PlainDate object represents a calendar date (year, month, and day) without a specific time zone, typically in ISO 8601 format ("2026-05-01").

It is used for dates that remain the same regardless of time zone, such as birthdays or holidays.


Temporal.PlainDate Properties

The Temporal.PlainDate object has 16 properties of calendar date information.

Example

const time = new Temporal.PlainDate(2026, 5, 17);
Try it Yourself »

The Temporal.PlainYearMonth Object

The Temporal.PlainYearMonth has 10 properties of calendar date information.

PropertyDescription
calendarIDCalendar system identifier ("iso8601")
daysInMonthThe total number of days in that month
daysInYearThe total number of days in that year
eraThe era name of the calendar, if applicable ("gregory")
eraYearThe year within the era, if applicable
inLeapYearA boolean indicating if the date falls in a leap year
monthThe month as an integer (1-12)
monthCodeA calendar-specific string code for the month ("M01")
monthsInYearThe total number of months in that year
yearThe year as an integer

Example

const date = new Temporal.PlainYearMonth(2026,5);
Try it Yourself »

The Temporal.PlainMonthDay Object

The Temporal.PlainMonthDay has 3 properties of calendar date information.

PropertyDescription
calendarIDCalendar system identifier ("iso8601")
dayThe day as an integer (1-31)
monthCodeA calendar-specific string code for the month ("M01")

Example

const date = new Temporal.PlainMonthDay(5, 17);
Try it Yourself »

Note

The Temporal.PlainMonthDay object does not have a month property.



The Temporal.PlainTime Object

The Temporal PlainTime object is a time object with no date.

It represents an ISO 8601 wall-clock time without a date or time zone.

Example: 14:30:00.

Example

const date = new Temporal.PlainTime(14, 30);
Try it Yourself »

Temporal.PlainTime Properties

The Temporal.PlainTime object has 6 properties of time information.

Example

const date = new Temporal.PlainTime(14, 30);
Try it Yourself »

The Temporal.PlainDateTime Object

The Temporal.PlainDateTime object is a date and time object.

It represents a calendar date and a wall-clock time with no time zone.

Example: 2026-05-07T14:30:00.

Example

const date = new Temporal.PlainDateTime(2026, 5, 17, 14, 30);
Try it Yourself »

Note

A PlainDateTime is essentially the combination of a Temporal.PlainDate() and a Temporal.PlainTime().


Temporal.PlainDateTime Properties

The Temporal.PlainDateTime object has 22 properties of calendar date information.

Example

const date = new Temporal.PlainDateTime(2026, 5, 1, 14, 30);
Try it Yourself »

Temporal Arithmetic

MethodReturns
temporal.add() New temporal representing a date moved forward by a duration
temporal.subtract() New temporal representing a date moved backward by a duration
temporal.round() New temporal rounded down to specified unit

Temporal Comparison

MethodDescription
temporal.compare() Static method useful for sorting arrays of dates (returns -1, 0, or 1)
temporal.equals() Returns true if two dates (and their calendars) are identical
temporal.since() The duration between two temporal objects
temporal.until() The duration between two temporal objects

Browser Support

Temporal is a major update to the JavaScript standard (TC39).

It is currently fully supported in Chrome, Edge, and Firefox, and is expected to reach full availability across browsers throughout 2026.

Chrome
144
Edge
144
Firefox
139
Safari
Opera
Jan 2026 Jan 2026 May 2025 🚫 🚫

Opera Support

Opera support will probably appear 1-3 browser cycles after Chromium, which often means a few months later.

Safari Support

As of March 2026, Safari has not yet announced a confirmed release date for stable support of the JavaScript Temporal API.

However, the implementation is actively in development and can be tested today in Safari Technology Preview by enabling the --use-temporal runtime flag.


Polyfill

Until Opera and Safari supports Temporal natively, use the official polyfill.

This Polyfill allows Temporal code to run in all browsers today:

Example

<script
src="https://cdn.jsdelivr.net/npm/@js-temporal/polyfill/dist/index.umd.js">
</script>

<script>
// Now you can use Temporal
const today = Temporal.Now.plainDateISO();
</script>


×

Contact Sales

If you want to use W3Schools services as an educational institution, team or enterprise, send us an e-mail:
sales@w3schools.com

Report Error

If you want to report an error, or if you want to make a suggestion, send us an e-mail:
help@w3schools.com

W3Schools is optimized for learning and training. Examples might be simplified to improve reading and learning. Tutorials, references, and examples are constantly reviewed to avoid errors, but we cannot warrant full correctness of all content. While using W3Schools, you agree to have read and accepted our terms of use, cookies and privacy policy.

Copyright 1999-2026 by Refsnes Data. All Rights Reserved. W3Schools is Powered by W3.CSS.

-->