8889841cPKK [&ª] ššis.jsnuW+A„¶"use strict"; var isPrototype = require("../prototype/is"); var dateValueOf = Date.prototype.valueOf; module.exports = function (value) { if (!value) return false; try { // Sanity check (reject objects which do not expose common Date interface) if (typeof value.getFullYear !== "function") return false; if (typeof value.getTimezoneOffset !== "function") return false; if (typeof value.setFullYear !== "function") return false; // Ensure its native Date object (has [[DateValue]] slot) dateValueOf.call(value); } catch (error) { return false; } // Ensure it hosts valid date if (isNaN(value)) return false; return !isPrototype(value); }; PKK [®¬1H ensure.jsnuW+A„¶"use strict"; var resolveException = require("../lib/resolve-exception") , is = require("./is"); module.exports = function (value/*, options*/) { if (is(value)) return value; return resolveException(value, "%v is not a date object", arguments[1]); }; PKK [&ª] ššis.jsnuW+A„¶PKK [®¬1H Ïensure.jsnuW+A„¶PKŽ