'use strict';

var getDay = Date.prototype.getDay; var tryDateObject = function tryDateObject(value) {

try {
        getDay.call(value);
        return true;
} catch (e) {
        return false;
}

};

var toStr = Object.prototype.toString; var dateClass = '[object Date]'; var hasToStringTag = typeof Symbol === 'function' && typeof Symbol.toStringTag === 'symbol';

module.exports = function isDateObject(value) {

if (typeof value !== 'object' || value === null) { return false; }
return hasToStringTag ? tryDateObject(value) : toStr.call(value) === dateClass;

};