Proper date comparison in #JavaScript

If you want to check if some variable contains valid date in JavaScript, this is the way that works properly in all cases:

isValidDate: function(d) {
    if ( === "[object Date]" ) {
        // it is a date, but still it could be 'Invalid date' which could make trouble
        if ( isNaN( d.getTime() ) ) {
            // date is not valid
            return false;
        } else {
            // date is valid
            return true;
    } else {
        // not a date
        return false;

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s