Blog/NotesConcept

Understand JavaScript Date Object with Examples (for JavaScript Interviews)

Go through different ways to display dates using javascript date object. It covers examples of date object usage to understand the main concepts of javascript date object.

Intermediate

Anuj Sharma

Last Updated Jan 9, 2025


JavaScript Date Object

Working with dates are very common use-case in web applications, and date-related operations can be achieved using Javascript Date Object. There are many methods supported by Date Object which makes it very easy to work with dates in javascript.

Table of Content

  1. Ways to Create JavaScript Date Object
  2. Commonly used Static & Instance Methods of Date Object

Ways to Create JavaScript Date Object

Date object supports 4 types of constructor functions to create a new object 

💡 Number of milliseconds since midnight at the beginning of January 1, 1970, UTC — also known as the epoch

1. No parameter new Date()

This constructor doesn't take any parameter and provides a string representation of date time.

Example

const date = new Date();
// "2025-01-05T11:29:53.357Z"

2. Epoch value parameter - new Date(epoch value)

This constructor takes the integer epoch value (in milliseconds), this input is the same which returned by Date.now() method. It returns the date-time in string format.

Example

// Epoc value - 1736076951966 in millisecond

const date = new Date(1736076951966);
// 2025-01-05T11:35:51.966Z

3. Date string - new Date(DateString)

This constructor takes the date string and returns the date object representing the same date string.

Example

const date = new Date("2025-01-07T11:45:51.966Z");

// 2025-01-07T11:45:51.966Z

4. Date time Individual Value - new Date(year, month, <day>, <hour>, <minute>, <second>, <millisecond>)

This parameter can take the individual values of date time parameters. In this date, constructor year and month parameters are mandatory to pass and other parameters are optional.

Example

const date = new Date(2025, 01, 04, 3, 24, 0);

// 2025-02-03T21:54:00.000Z

Commonly Used Static & Instance Methods of Date Object

There are many Static and instance methods supported by date objects, lets check out the most common static and instance methods of Date Objects in javascript. These methods will help to handle any date-related use-case in Machine Coding and javascript interview rounds.  

1. Static Date.now()

static method now() returns the epoch time in milliseconds, this method is used generally to find the time difference in milliseconds between the 2 timestamps  

const date = Date.now() 

console.log('Epoc time in milliseconds: ', date);
// Epoc time in milliseconds: 1736080469441

2. Static Date.parse()

parse() static method parses the input time and provides the corresponding epoch time, this is the same as using getTime() method to get epoch time for a given input date.

Date.parse("2025-01-07T11:45:51.966Z");
// 1736250351966

const date = new Date("2025-01-07T11:45:51.966Z");
date.getTime() 
// 1736250351966

3. getDate() & getTime()

const date = new Date("2025-01-07T11:45:51.966Z");

date.getDate() // 7
date.getTime() // 1736250351966

4. getDay(), getMonth() & getFullYear()

const date = new Date("2025-01-07T11:45:51.966Z");

date.getDay() // 2
date.getMonth() // 0
date.getFullYear() // 2025

5. getHours(), getMinutes(), getSeconds() & getMilliseconds()

const date = new Date("2025-01-07T11:45:51.966Z");

date.getHours(); // 17
date.getMinutes(); // 15
date.getSeconds(); // 51
date.getMilliseconds() // 966

# Common use-cases of JavaScript Date Object in Frontend Interview

1. Find the time difference between 2 timestamps in javascript

static method Date.now() can be used to find the epoch time in milliseconds, and can be used to find the difference between 2 timestamps

Example

const epochTime1 = Date.now();
console.log('epochTime1 = ',epochTime1);

let sum = 0;
for(let i=0; i<1000000; i++){
  // do nothing
  sum = sum + i;
}

const epochTime2 = Date.now();
console.log('epochTime2 = ',epochTime2);

console.log('Time difference - ', epochTime2 - epochTime1);

// Output
epochTime1 = 1736081427953
epochTime2 = 1736081427962
Time difference -  9

Share this post now:

Flaunt You Expertise/Knowledge & Help your Peers

Sharing your knowledge will strengthen your expertise on topic. Consider writing a quick Blog/Notes to help frontend folks to ace Frontend Interviews.

Other Related Blogs

4 Ways to Reverse a String in JavaScript (JavaScript Interview)

Anuj Sharma

Last Updated Jan 4, 2025

Explore the most common ways to reverse a string in javascript including the most optimal way for frontend interviews with O(1) time complexity.

What is javascript:void(0) and How it Works?

Anuj Sharma

Last Updated Jan 5, 2025

A comprehensive explanation about using javascript:void(0) in javascript. When to use javascript:void(0) and how it works with examples of using it with anchor tag.

Explained Web Authorization Techniques - Session & JWT

Anuj Sharma

Last Updated Jan 2, 2025

Understand important web authorization techniques to enhance role-based authentication for any web application with popular techniques like Session & JSON Web Token (JWT)

Ultimate guide to REST API calls using Fetch: Machine Coding Essential

Vivek Chavan

Last Updated Dec 23, 2024

You will get a clear understanding about working with any rest api and common concepts asked during interviews

Promise Polyfill in JavaScript - Step by Step Explanation

Anuj Sharma

Last Updated Dec 27, 2024

An Interview-focused explanation of Promise Polyfill in JavaScript which helps to understand both Functional and ES6 custom promise implementation.

What is CORS ? Cross-Origin Resource Sharing Explained [For Interviews]

Anuj Sharma

Last Updated Dec 10, 2024

A brief explanation of Cross-Origin Resource Sharing (CORS) concept to enable client application accessing resources from cross domain and HTTP headers involved to enable resource access.

FrontendGeek
FrontendGeek

© 2024 FrontendGeek. All rights reserved