top of page

JavaScript Date objects and methods

JavaScript Date Objects


JavaScript Date Object lets us work with dates:


Example:


JavaScript Date Output


By default, JavaScript uses the browser's time zone and display a date as a full text string:

Fri Oct 18 2019 11:35:53 GMT+0530 (IST)

Creating Date Objects


Date objects are created with the new Date() constructor.

There are 4 ways to create a new date object:

  • new Date()

  • new Date(year, month, day, hours, minutes, seconds, milliseconds)

  • new Date(milliseconds)

  • new Date(date string)

new Date()


new Date() creates a new date object with the current date and time.


Example:

Date objects are static. The computer time is ticking, but date objects are not.


new Date(year, month, ...)

  • new Date(year, month,...) creates a new date object with a specified date and time.

  • 7 numbers specify year, month, day, hour, minute, second, and millisecond (in that order):

  • 6 numbers specify year, month, day, hour, minute, second.

  • 5 numbers specify year, month, day, hour, and minute.

  • 4 numbers specify year, month, day, and hour.milliseconds.

  • 3 numbers specify year, month, and day.

  • 2 numbers specify year and month.

  • Month can not be omitted. If only one parameter is supplied, it will be treated as milliseconds.

Example:

Note:-

  • JavaScript counts months from 0 to 11.

  • January is 0. December is 11.


Previous Century


One and two digit years will be interpreted as 19xx:


Example:


JavaScript Stores Dates as Milliseconds

  • JavaScript stores dates as number of milliseconds since January 01, 1970, 00:00:00 UTC (Universal Time Coordinated).

  • Zero time is January 01, 1970 00:00:00 UTC.

  • Now the time is: 1571378753606 milliseconds past January 01, 1970


new Date(milliseconds)

  • new Date(milliseconds) creates a new date object as zero time plus milliseconds.

  • Using new Date(milliseconds), creates a new date object as January 1, 1970, 00:00:00 Universal Time (UTC) plus the milliseconds.

Example:

Note:- One day (24 hours) is 86 400 000 milliseconds.


Date Methods

  • When a Date object is created, a number of methods allow you to operate on it.

  • Date methods allow you to get and set the year, month, day, hour, minute, second, and millisecond of date objects, using either local time or UTC (universal, or GMT) time.


Displaying Dates

  • JavaScript will (by default) output dates in full text string format.

  • When you display a date object in HTML, it is automatically converted to a string, with the toString() method.

  • The toUTCString() method converts a date to a UTC string (a date display standard).

  • The toDateString() method converts a date to a more readable format.

Example:


JavaScript Date Formats


JavaScript Date Input


There are generally 3 types of JavaScript date input formats:


Type Example

  • 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:

Wed Mar 25 2015 05:30:00 GMT+0530 (IST)


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)

  • 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.


Note:- UTC (Universal Time Coordinated) is the same as GMT (Greenwich Mean Time).


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 IST (Indian Standard Time) if a user browses from India.


JavaScript Short Dates.


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


Example:


JavaScript Long Dates.

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

  • Month and day can be in any order.

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

  • Commas are ignored. Names are case insensitive.

Example:


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.

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

Example:


JavaScript Get Date Methods


These methods can be used for getting information from a date object:


Method Description

  • getFullYear() Get the year as a four digit number (yyyy)

  • getMonth() Get the month as a number (0-11)

  • getDate() Get the day as a number (1-31)

  • getHours() Get the hour (0-23)

  • getMinutes() Get the minute (0-59)

  • getSeconds() Get the second (0-59)

  • getMilliseconds() Get the millisecond (0-999)

  • getTime() Get the time (milliseconds since January 1, 1970)

  • getDay() Get the weekday as a number (0-6)

  • Date.now() Get the time. ECMAScript 5.


The getTime() Method


The getTime() method returns the number of milliseconds since January 1, 1970:


Example:


The getMonth() Method

  • The getMonth() method returns the month of a date as a number (0-11).

  • In JavaScript, the first month (January) is month number 0, so December returns month number 11.

  • You can use an array of names, and getMonth() to return the month as a name.

Example:


The getDate() Method


The get Date() method returns the day of a date as a number (1-31).


Example:


UTC Date Methods


UTC date methods are used for working with UTC dates (Universal Time Zone dates):


Method Description

  • getUTCDate() Same as getDate(), but returns the UTC date

  • getUTCDay() Same as getDay(), but returns the UTC day

  • getUTCFullYear() Same as getFullYear(), but returns the UTC year

  • getUTCHours() Same as getHours(), but returns the UTC hour

  • getUTCMilliseconds() Same as getMilliseconds(), but returns the UTC milliseconds

  • getUTCMinutes() Same as getMinutes(), but returns the UTC minutes

  • getUTCMonth() Same as getMonth(), but returns the UTC month

  • getUTCSeconds() Same as getSeconds(), but returns the UTC seconds

JavaScript Set Date Methods


Set Date methods let you set date values (years, months, days, hours, minutes, seconds, milliseconds) for a Date Object.


Set Date Methods


Set Date methods are used for setting a part of a date:


Method Description

  • setDate() Set the day as a number (1-31)

  • setFullYear() Set the year (optionally month and day)

  • setHours() Set the hour (0-23)

  • setMilliseconds() Set the milliseconds (0-999)

  • setMinutes() Set the minutes (0-59)

  • setMonth() Set the month (0-11)

  • setSeconds() Set the seconds (0-59)

  • setTime() Set the time (milliseconds since January 1, 1970)


The setFullYear() Method

  • The setFullYear() method sets the year of a date object. In this example to 2020.

  • The setFullYear() method can optionally set month and day.

Example:


The setHours() Method


The setHours() method sets the hours of a date object (0-23):


Example:


Compare Dates

  • Dates can easily be compared.

  • JavaScript counts months from 0 to 11. January is 0. December is 11.

  • The following example compares today's date with January 14, 2100

Example:



bottom of page