# How to calculate the number of days between two dates in JavaScript ?

Last Updated : 17 Jan, 2024

To Calculate the number of days between two dates in JavaScript we use the `Date` object and perform some basic arithmetic with milliseconds. The below methods can be used to find out the number of days between two dates.

Table of Content

## Using Two different dates

• Use new Date() to create two date objects, date1 and date2.
• Use date2.getTime() – date1.getTime() to calculate the time difference in milliseconds between the two dates.
• Divide the time difference by the number of milliseconds in a day (1000 * 60 * 60 * 24) to obtain the number of days.

Example: The following JavaScript program will illustrate the process of finding the number of days between two dates.

## javascript

 `let date1 = ``new` `Date(``"01/16/2024"``);` `let date2 = ``new` `Date(``"01/26/2024"``);`   `// Calculating the time difference` `// of two dates` `let Difference_In_Time =` `    ``date2.getTime() - date1.getTime();`   `// Calculating the no. of days between` `// two dates` `let Difference_In_Days =` `    ``Math.round` `        ``(Difference_In_Time / (1000 * 3600 * 24));`   `// To display the final no. of days (result)` `console.log` `    ``(``"Total number of days between dates:\n"` `+` `        ``date1.toDateString() + ``" and "` `+` `        ``date2.toDateString() +` `        ``" is: "` `+ Difference_In_Days + ``" days"``);`

Output

```Total number of days between dates:
Tue Jan 16 2024 and Fri Jan 26 2024 is: 10 days
```

## Using One fixed date

• Present date is obtained using new Date().
• Christmas date is set using date.getFullYear().
• If Christmas has passed, adjust the date to the next year.
• Calculate the difference in days using Math.round((christmas_day.getTime() – present_date.getTime()) / one_day).
• Log the result to the console with present and Christmas dates.

Example: The below code find out the number of days between the current date and the christmas date.

## javascript

 `// One day Time in ms (milliseconds)` `let one_day = 1000 * 60 * 60 * 24;`   `// To set present_dates to two variables` `let present_date = ``new` `Date();`   `// 0-11 is Month in JavaScript` `let christmas_day = ` `    ``new` `Date(present_date.getFullYear(), 11, 25);`   `// To Calculate next year's Christmas if passed already.` `if` `(present_date.getMonth() == ` `    ``11 && present_date.getDate() > 25) {` `        ``christmas_day.setFullYear(christmas_day.getFullYear() + 1);` `}`   `// To Calculate the result in milliseconds and ` `// then converting into days` `let Result = Math.round((christmas_day.getTime() - ` `    ``present_date.getTime()) / one_day);`   `// To remove the decimals from the (Result) ` `// resulting days value` `let Final_Result = Result.toFixed(0);`   `// To display the final_result value` `console.log(``"Number of days remaining till Christmas:\n"` `+` `    ``present_date.toDateString() + ``" and "` `+ ` `    ``christmas_day.toDateString() +` `    ``" is: "` `+ Final_Result + ``" days"``);`

Output

```Number of days remaining till Christmas:
Wed Jan 17 2024 and Wed Dec 25 2024 is: 343 days
```

JavaScript is best known for web page development but it is also used in a variety of non-browser environments. You can learn JavaScript from the ground up by following this JavaScript Tutorial and JavaScript Examples.

Previous
Next