Deux identiques JavaScript dates ne sont pas égaux
Quand j'ai créer deux identiques JavaScript Date
des objets et de les comparer entre eux, il apparaît qu'ils ne sont pas égaux. Comment puis-je tester si deux JavaScript dates ont la même valeur?
var date1 = new Date('Mon Mar 11 2013 00:00:00');
var date2 = new Date('Mon Mar 11 2013 00:00:00');
console.log(date1 == date2); //false?
- vérifiez également ceci
- Pour voir si les deux dates sont les mêmes, vous pourriez faire
+a == +b
ou!(a - b)
, mais peut-être un peu obscurci. Ne laissez pas l'analyse aléatoire de la date de chaînes à la Date de constructeur, soit de fournir une conformité aux standards de la chaîne (ce qui n'est pas systématiquement pris en charge encore) ou de fournir des valeurs par ECMA-262.
Vous devez vous connecter pour publier un commentaire.
Il semble cela a déjà été abordé.
Pour vérifier si les dates sont égaux, ils doivent être convertis à leurs primitives:
Tout d'abord, vous faites un son erreur ici de comparer les références. Jetez un oeil à ceci:
Ici, bien que les objets ont l'air identiques mais différents emplacements dans la mémoire.
Boutique de référence seulement l'adresse de l'objet. Par conséquent, les deux références sont différentes.
Alors maintenant, il nous faut comparer les valeurs puisque vous savez référence de comparaison ne fonctionne pas ici.
Il vous suffit de faire
Je compare de nombreux types de valeurs dans une boucle for, je n'étais donc pas en mesure de les évaluer en soustrayant, à la place je coverted valeurs de chaîne avant de comparer les