Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to get the minimum and maximum date

How do I get the smallest and biggest date. I see that the smallest number can be got like this:

Number.MIN_VALUE

Date does not have this. Is there a way to find the smallest and biggest date

like image 300
Luke101 Avatar asked Nov 23 '14 19:11

Luke101


People also ask

How can find max and min date in SQL?

The SQL MIN() and MAX() FunctionsThe MIN() function returns the smallest value of the selected column. The MAX() function returns the largest value of the selected column.


1 Answers

Date does not have this

Actually, it does, but only indirectly. According to the specification, a Date object's milliseconds-since-the-Epoch value can only be in the range -8640000000000000 to 8640000000000000.

So the minimum date is new Date(-8640000000000000) (Tue, 20 Apr -271821 00:00:00 GMT), and the maximum date is new Date(8640000000000000) (Sat, 13 Sep 275760 00:00:00 GMT).

If you wanted, you could put those on the Date function as properties:

Date.MIN_VALUE = new Date(-8640000000000000);
Date.MAX_VALUE = new Date(8640000000000000);

...but since Date instances are mutable, I probably wouldn't, because it's too easy to accidentally modify one of them. An alternative would be to do this:

Object.defineProperties(Date, {
    MIN_VALUE: {
      value: -8640000000000000 // A number, not a date
    },
    MAX_VALUE: {
      value: 8640000000000000
    }
});

That defines properties on Date that cannot be changed that have the min/max numeric value for dates. (On a JavaScript engine that has ES5 support.)

like image 89
T.J. Crowder Avatar answered Oct 17 '22 01:10

T.J. Crowder