Find the difference between Dates in JavaScript
Learn how to find difference between two dates in JavaScript.

We learn about finding Number of Seconds , Number of Minutes , Number of hours , Number of days , Number of weeks , Number of months , Number of years between two dates.
Let’s create two dates
let d1 = Date.now();let d2 = new Date(2019,5,22).getTime(); //Jun 22 2019 in millisecondconsole.log(d1); //1573527098946console.log(d2); //1561141800000Number of Seconds between two dates.
1 second = 1000 milliseconds Now we are having two date d1 and d2 in milliseconds. To convert milliseconds into seconds ,we can divide the difference between two dates in milliseconds by 1000 .
function secondsDiff(d1, d2) { let millisecondDiff = d2 - d1; let secDiff = Math.floor( ( d2 - d1) / 1000 ); return secDiff;}
Number of Minutes between two dates.
1 minutes = 60 secondsNow we have method to find the number of seconds between two dates , so we can find seconds difference, then divide that by 60 will give us the number of minutes between two dates.
function minutesDiff(d1, d2) { let seconds = secondsDiff(d1, d2); let minutesDiff = Math.floor( seconds / 60 ); return minutesDiff;}
Number of Hours between two dates.
1 hour = 60 minutesNow we have method to find the number of minutes between two dates , so we can find minutes difference, then divide that by 60 will give us the number of hours between two dates .
function hoursDiff(d1, d2) { let minutes = minutesDiff(d1, d2); let hoursDiff = Math.floor( minutes / 60 ); return hoursDiff;}
Number of Days between two dates.
1 day = 24 hours Now we have method to find the number of hours between two dates , so we can find difference, then divide that by 24 will give us the number of days between two dates.
function daysDiff(d1, d2) { let hours = hoursDiff(d1, d2); let daysDiff = Math.floor( hours / 24 ); return daysDiff;}
Number of Weeks between two dates.
1 week = 7 daysNow we have method to find the number of days between two dates , so we can find difference, then divide that by 7 will give us the number of weeks between two dates.
function weeksDiff(d1, d2) { let days = daysDiff(d1, d2); let weeksDiff = Math.floor( days/ 7 ); return weeksDiff;}
Number of Years between two dates.
To find number of years between two dates we have in-built method getFullYear , Subtract the date2 year with date1 year, we will get yearsDiff .
function yearsDiff(d1, d2) { let date1 = new Date(d1); let date2 = new Date(d2); let yearsDiff = date2.getFullYear() - date1.getFullYear(); return yearsDiff;}
Number of Months between two dates.
1 month != 30 days Number of days in month is not same in all months , so we need to do it differentlySteps :
- First we need to find number of years between two dates.
- Multiply number of years between two dates by 12(because for each year 12 months)
Subtractthe month number(June → 5) ofsecond datewith the month number offirst date
Finding number of months between two dates
function monthsDiff(d1, d2) { let date1 = new Date(d1); let date2 = new Date(d2); let years = yearsDiff(d1, d2); let months =(years * 12) + (date2.getMonth() - date1.getMonth()) ; return months;}
Thanks for Reading 📖 . Hope you like this. If you found any typo or mistake send me a private note 📝 thanks 🙏 😊 .
Follow me JavaScript Jeep🚙💨 .
Please make a donation here. 80% of your donation is donated to someone needs food 🥘. Thanks in advance.





