Back to Home
Dates

How to Compare Dates

Convert dates to timestamps for comparison

Quick Answer (2024 ES6+ Way)

javascript
const date1 = new Date('2024-01-01');
const date2 = new Date('2024-12-31');
const isAfter = date2 > date1;
console.log(isAfter); // true

Live Example

javascript
const today = new Date();
const deadline = new Date('2024-12-31');

// Check if deadline has passed
const isPast = today > deadline;
console.log(`Deadline passed: ${isPast}`);

// Calculate days difference
const diffTime = deadline - today;
const diffDays = Math.ceil(diffTime / (1000 * 60 * 60 * 24));
console.log(`Days until deadline: ${diffDays}`);

// Check if same day
const isSameDay = (d1, d2) => {
  return d1.toDateString() === d2.toDateString();
};

Common Variations

Is Date in Range
javascript
const inRange = (date, start, end) => {
  return date >= start && date <= end;
};
Get Days Between
javascript
const daysBetween = (d1, d2) => {
  const diff = Math.abs(d2 - d1);
  return Math.floor(diff / (1000 * 60 * 60 * 24));
};

❌ Don't Do This (Outdated Way)

Avoid comparing date objects directly with ==

javascript
// DON'T DO THIS
if (date1 == date2) {
  // This compares references, not values
}

Browser Support

Works in all modern browsers (ES5+)

#dates#comparison#time