Heim > Web-Frontend > js-Tutorial > Wie kann ich ungültige JavaScript-Datumsobjekte zuverlässig erkennen?

Wie kann ich ungültige JavaScript-Datumsobjekte zuverlässig erkennen?

Susan Sarandon
Freigeben: 2024-12-13 00:54:09
Original
175 Leute haben es durchsucht

How Can I Reliably Detect Invalid JavaScript Date Objects?

Ungültige Datumsinstanzen in JavaScript erkennen

Bestimmen, ob ein JavaScript-Datumsobjekt gültig ist, kann eine Herausforderung sein. Obwohl ungültige Daten als Objekte erscheinen, geben sie bei der Zeichenfolgenkonvertierung „Ungültiges Datum“ zurück. Diese Diskrepanz zwischen der Instanz von Date und der Ausgabe von console.log stellt ein Problem für Entwickler dar.

Lösung: Auf NaN-Zeitwert prüfen

Eine zuverlässige Methode zum Erkennen ungültiger Datumsangaben ist Testen Sie NaN als Zeitwert. Innerhalb des Date-Objekts gibt NaN ein ungültiges Datum an, während gültige Daten einen gültigen Zeitwert haben. Dieses Verhalten ist im ECMA-262-Standard dokumentiert.

Codebeispiel:

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
}
Nach dem Login kopieren

Vereinfachte Version:

function isValidDate(d) {
  return d instanceof Date && !isNaN(d);
}
Nach dem Login kopieren

Beachten Sie, dass diese Lösung nur Datumsobjekte validiert, nicht die Datumseingabe. Ungültige Datumsangaben wie „32.13.2013“ unterscheiden sich von ungültigen Datumsinstanzen.

Das obige ist der detaillierte Inhalt vonWie kann ich ungültige JavaScript-Datumsobjekte zuverlässig erkennen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage