Détecter une « date invalide » Date instance in JavaScript

Mots clés : javascriptdatejavascript

meilleur 5 Réponses Détecter une « date invalide » Date instance in JavaScript

vote vote

93

if (Object.prototype.toString.call(d) === "[object Date]") {   // it is a date   if (isNaN(d.getTime())) {  // d.valueOf() could also work     // date is not valid   } else {     // date is valid   } } else {   // not a date } 
function isValidDate(d) {   return d instanceof Date && !isNaN(d); } 
vote vote

87

var timestamp = Date.parse('foo');  if (isNaN(timestamp) == false) {   var d = new Date(timestamp); } 
vote vote

73

d instanceof Date && isFinite(d) 
Object.prototype.toString.call(d) === '[object Date]' 
vote vote

68

Date.prototype.isValid = function () {     // An invalid date object returns NaN for getTime() and NaN is the only     // object not strictly equal to itself.     return this.getTime() === this.getTime(); };   
var d = new Date("lol");  console.log(d.isValid()); // false  d = new Date("2012/09/11");  console.log(d.isValid()); // true 
vote vote

58

if(!isNaN(date.getTime())) 

Questions similaires