How to get the number of seconds between two Dates in JavaScript?

In JavaScript, calculating the difference between two dates in seconds is a common requirement for timers, age calculators, and duration displays. JavaScript Date objects provide millisecond precision, which we can easily convert to seconds.

Using the getTime() Method

The getTime() method returns the number of milliseconds since January 1, 1970 UTC. By subtracting two timestamps and dividing by 1000, we get the difference in seconds.

Syntax

let date1 = new Date("Aug 12, 2022 19:45:25");
let date2 = new Date("Aug 14, 2022 19:45:25");
let seconds = Math.abs(date1.getTime() - date2.getTime()) / 1000;

Example

<html>
<body>
   <h4>Using <i>getTime()</i> method to get number of seconds between two dates</h4>
   <p id="date1"></p>
   <p id="date2"></p>
   <p id="seconds">Number of seconds between two dates: </p>
   <script>
      var t1 = new Date("Aug 12, 2022 19:45:25");
      var t2 = new Date("Aug 14, 2022 19:45:25");
      var dif = Math.abs(t1.getTime() - t2.getTime()) / 1000;
      
      document.getElementById('date1').innerHTML = "First date: " + t1;
      document.getElementById('date2').innerHTML = "Second date: " + t2;
      document.getElementById('seconds').innerHTML += dif + " seconds";
   </script>
</body>
</html>
First date: Fri Aug 12 2022 19:45:25 GMT+0000 (UTC)
Second date: Sun Aug 14 2022 19:45:25 GMT+0000 (UTC)
Number of seconds between two dates: 172800 seconds

Using Direct Date Subtraction with Math.abs()

You can subtract Date objects directly in JavaScript. The result is automatically in milliseconds, which we divide by 1000 to get seconds. Math.abs() ensures we get a positive result regardless of date order.

Syntax

let date1 = new Date();
let date2 = new Date();
let seconds = Math.abs(date1 - date2) / 1000;

Example

<html>
<body>
   <h3>Get seconds between two dates using absolute difference</h3>
   <p id="date1"></p>
   <p id="date2"></p>
   <p id="seconds">Number of seconds between two dates: </p>
   <script>
      let date1 = new Date("Nov 25 2022 07:24:35");
      let date2 = new Date("Nov 25 2022 07:26:15");
      var dif = Math.abs(date1 - date2) / 1000;
      
      document.getElementById('date1').innerHTML = "First date: " + date1;
      document.getElementById('date2').innerHTML = "Second date: " + date2;
      document.getElementById('seconds').innerHTML += dif + " seconds";
   </script>
</body>
</html>
First date: Fri Nov 25 2022 07:24:35 GMT+0000 (UTC)
Second date: Fri Nov 25 2022 07:26:15 GMT+0000 (UTC)
Number of seconds between two dates: 100 seconds

Using Math.round() for Whole Seconds

If you need whole seconds without decimal places, use Math.round() instead of Math.abs(). This rounds the result to the nearest integer.

Example

<html>
<body>
   <h3>Get seconds between two dates using Math.round() method</h3>
   <p id="date1"></p>
   <p id="date2"></p>
   <p id="seconds">Number of seconds between two dates: </p>
   <script>
      let date1 = new Date("Nov 25 2022 07:24:35");
      let date2 = new Date("Nov 25 2022 07:24:37.500");
      var dif = Math.abs(Math.round(date1 - date2)) / 1000;
      
      document.getElementById('date1').innerHTML = "First date: " + date1;
      document.getElementById('date2').innerHTML = "Second date: " + date2;
      document.getElementById('seconds').innerHTML += dif + " seconds";
   </script>
</body>
</html>
First date: Fri Nov 25 2022 07:24:35 GMT+0000 (UTC)
Second date: Fri Nov 25 2022 07:24:37 GMT+0000 (UTC)
Number of seconds between two dates: 3 seconds

Comparison of Methods

Method Use Case Result Type
getTime() Explicit timestamp comparison Decimal seconds
Math.abs(date1 - date2) Simple date subtraction Decimal seconds
Math.round() Whole seconds needed Integer seconds

Conclusion

All three methods effectively calculate seconds between dates. Use getTime() for clarity, direct subtraction for simplicity, and Math.round() when you need whole seconds without decimals.

Updated on: 2026-03-15T23:18:59+05:30

21K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements