Maison > interface Web > js tutoriel > Comment puis-je détecter de manière fiable les objets de date JavaScript invalides ?

Comment puis-je détecter de manière fiable les objets de date JavaScript invalides ?

Susan Sarandon
Libérer: 2024-12-13 00:54:09
original
175 Les gens l'ont consulté

How Can I Reliably Detect Invalid JavaScript Date Objects?

Détection des instances de date invalides en JavaScript

Déterminer si un objet Date JavaScript est valide peut être un défi. Bien qu'elles apparaissent sous forme d'objets, les dates invalides renvoient "Date invalide" lors de la conversion de chaîne. Cet écart entre la sortie instanceof Date et console.log pose un problème aux développeurs.

Solution : vérification de la valeur temporelle NaN

Une méthode fiable pour détecter les dates non valides consiste à testez NaN comme valeur temporelle. Dans l'objet Date, NaN indique une date non valide, alors que les dates valides ont une valeur temporelle valide. Ce comportement est documenté dans la norme ECMA-262.

Exemple de code :

if (Object.prototype.toString.call(d) === "[object Date]") {
  if (isNaN(d)) { // d.getTime() or d.valueOf() also works
    // Date object is invalid
  } else {
    // Date object is valid
  }
} else {
  // Not a date object
}
Copier après la connexion

Version simplifiée :

function isValidDate(d) {
  return d instanceof Date && !isNaN(d);
}
Copier après la connexion

Notez que cette solution valide uniquement les objets Date, pas la saisie de date. Les dates non valides, telles que « 32/13/2013 », sont distinctes des instances de date non valides.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal