Open Playground
JS TutorialLesson #62

JavaScript Date Formats

There are generally 3 types of JavaScript date input formats:

JavaScript Date Input

There are generally 3 types of JavaScript date input formats:

TypeExample
ISO Date"2015-03-25" (The International Standard)
Short Date"03/25/2015"
Long Date"Mar 25 2015" or "25 Mar 2015"
The ISO format follows a strict standard in JavaScript. > The other formats are not > so well defined and might be browser specific.

JavaScript Date Output

Independent of input format, JavaScript will (by default) output dates in full text string format:

Example

Example Code

javascript
Try it Yourself

JavaScript ISO Dates

ISO 8601 is the international standard for the representation of dates and times.

The ISO 8601 syntax (YYYY-MM-DD) is also the preferred JavaScript date format:

Example (Complete date)

Example Code

javascript
Try it Yourself
const d = new Date("2015-03-25");
The computed date will be relative to your time zone. > Depending on your time zone, the result above > will vary between March 24 and March 25.

ISO Dates (Year and Month)

ISO dates can be written without specifying the day (YYYY-MM):

Example

Example Code

javascript
Try it Yourself
const d = new Date("2015-03");
Time zones will vary the result above between February 28 and March 01.

ISO Dates (Only Year)

ISO dates can be written without month and day (YYYY):

Example

Example Code

javascript
Try it Yourself
const d = new Date("2015");
Time zones will vary the result above between December 31 2014 and January 01 2015.

ISO Dates (Date-Time)

ISO dates can be written with added hours, minutes, and seconds (YYYY-MM-DDTHH:MM:SSZ):

Example

Example Code

javascript
Try it Yourself
const d = new Date("2015-03-25T12:00:00Z");

Date and time are separated with a capital T.

UTC time is defined with a capital letter Z.

If you want to modify the time relative to UTC, remove the Z and add +HH:MM or -HH:MM instead:

Example

Example Code

javascript
Try it Yourself
const d = new Date("2015-03-25T12:00:00-06:30");
UTC (Universal Time Coordinated) is the same as GMT (Greenwich Mean Time).
Omitting T or Z in a date-time string can give different results in different browsers.

Time Zones

When setting a date, without specifying the time zone, JavaScript will use the browser's time zone.

When getting a date, without specifying the time zone, the result is converted to the browser's time zone.

In other words: If a date/time is created in GMT (Greenwich Mean Time), the date/time will be converted to CDT (Central US Daylight Time) if a user browses from central US.


JavaScript Short Dates.

Short dates are written with an "MM/DD/YYYY" syntax like this:

Example

Example Code

javascript
Try it Yourself
const d = new Date("03/25/2015");

WARNINGS !

Example

Example Code

javascript
Try it Yourself
const d = new Date("2015-3-25");

Example

Example Code

javascript
Try it Yourself
const d = new Date("2015/03/25");

Example

Example Code

javascript
Try it Yourself
const d = new Date("25-03-2015");

JavaScript Long Dates.

Long dates are most often written with a "MMM DD YYYY" syntax like this:

Example

Example Code

javascript
Try it Yourself
const d = new Date("Mar 25 2015");

Month and day can be in any order:

Example

Example Code

javascript
Try it Yourself
const d = new Date("25 Mar 2015");

And, month can be written in full (January), or abbreviated (Jan):

Example

Example Code

javascript
Try it Yourself
const d = new Date("January 25 2015");

Example

Example Code

javascript
Try it Yourself
const d = new Date("Jan 25 2015");

Commas are ignored. Names are case insensitive:

Example

Example Code

javascript
Try it Yourself
const d = new Date("JANUARY, 25, 2015");

Date Input - Parsing Dates

If you have a valid date string, you can use the Date.parse() method to convert it to milliseconds.

Date.parse() returns the number of milliseconds between the date and January 1, 1970:

Example

Example Code

javascript
Try it Yourself
let msec = Date.parse("March 21, 2012");

You can then use the number of milliseconds to convert it to a date object:

Example

Example Code

javascript
Try it Yourself
let msec = Date.parse("March 21, 2012");

const d = new Date(msec);
Learn More: > JavaScript Date Tutorial > JavaScript Date Get Methods > JavaScript Date Set Methods > JavaScript Date Reference

Interactive Code Examples

Example (Complete date)

javascript
Try it Yourself
JavaScript syntax and algorithm demonstration.
const d = new Date("2015-03-25");

JS Example 3

javascript
Try it Yourself
JavaScript syntax and algorithm demonstration.
const d = new Date("2015-03");

JS Example 4

javascript
Try it Yourself
JavaScript syntax and algorithm demonstration.
const d = new Date("2015");

JS Example 5

javascript
Try it Yourself
JavaScript syntax and algorithm demonstration.
const d = new Date("2015-03-25T12:00:00Z");

JS Example 6

javascript
Try it Yourself
JavaScript syntax and algorithm demonstration.
const d = new Date("2015-03-25T12:00:00-06:30");

JS Example 7

javascript
Try it Yourself
JavaScript syntax and algorithm demonstration.
const d = new Date("03/25/2015");