JavaScript Date Comparison Comparing Date values

Help us to keep this website almost Ad Free! It takes only 10 seconds of your time:
> Step 1: Go view our video on YouTube: EF Core Bulk Extensions
> Step 2: And Like the video. BONUS: You can also share it!

Example

To check the equality of Date values:

var date1 = new Date();
var date2 = new Date(date1.valueOf() + 10);
console.log(date1.valueOf() === date2.valueOf());

Sample output: false

Note that you must use valueOf() or getTime() to compare the values of Date objects because the equality operator will compare if two object references are the same. For example:

var date1 = new Date();
var date2 = new Date();
console.log(date1 === date2);

Sample output: false

Whereas if the variables point to the same object:

var date1 = new Date();
var date2 = date1;
console.log(date1 === date2);

Sample output: true

However, the other comparison operators will work as usual and you can use < and > to compare that one date is earlier or later than the other. For example:

var date1 = new Date();
var date2 = new Date(date1.valueOf() + 10);
console.log(date1 < date2);

Sample output: true

It works even if the operator includes equality:

var date1 = new Date();
var date2 = new Date(date1.valueOf());
console.log(date1 <= date2);

Sample output: true



Got any JavaScript Question?