# Calculate the number of days between 2 dates in JavaScript

Published July 20, 2020

## Calculate the number of days between 2 dates

Consider this 2 dates,

```
// 2 dates
const date1 = new Date("September 03, 1998");
const date2 = new Date(); // will return current date
```

You can also provide the date in `MM/DD/YYYY`

format also into the `Date()`

constructor function.

To find the number of the days between any 2 dates, we need to rely on some calculations as javascript itself doesn't provide any methods to do that.

First, we need to get the milliseconds between these 2 dates.

```
// 2 dates
const date1 = new Date("September 03, 1998");
const date2 = new Date(); // will return current date
// get milliseconds
const millisecondsBetween2Dates = Math.abs(date2 - date1);
```

We are using the `Math.abs()`

to get the absolute value so that it deals with negative values also.

Secondly, we need to get the number of days using these milliseconds.

```
// 2 dates
const date1 = new Date("September 03, 1998");
const date2 = new Date(); // will return current date
// get milliseconds
const millisecondsBetween2Dates = Math.abs(date2 - date1);
// get number of days
const numberOfDays = Math.ceil(
millisecondsBetween2Dates / (1000 * 60 * 60 * 24)
);
console.log(numberOfDays);
```

We are using the `Math.ceil()`

to round to the next largest integer.

To convert it into the days we are dividing it with `1000 (milliseconds)* 60 (seconds) * 60 (minutes) * 24 (hours)`

.

### NOTE: `1 second is 1000 milliseconds.`

We are dividing the total milliseconds with 1000