Verwendung von ==
funktioniert im Allgemeinen nicht, da es das Objekt Identitäten keine Werte.
Die Verwendung des +
Präfix oder getTime()
vor dem Vergleich in Millisekunden zu konvertieren, kann auch fehlschlagen, wenn Ihre Datumsobjekte eine Zeitkomponente haben und Sie nur ihre Datumsanteile vergleichen wollen. (Lassen Sie sich nicht dazu verleiten, nach dem toDate()
Methode, da es sich um den Tag des Monats handelt und Monat und Jahr verworfen werden!).
Dies scheint einer der wenigen Fälle zu sein, in denen toDateString()
ist nützlich, um eine knappe Lösung ohne zusätzliche Bibliotheken zu erhalten.
var date1=new Date("2014-12-10");
var date2=new Date("2014-12-10T01:00");
+date1 == +date2
>false
date1.getTime() == date2.getTime()
>false
date1.toDateString() == date2.toDateString()
>true