web-dev-qa-db-fra.com

Comment savoir si deux dates sont dans la même journée?

J'utilise le module instant npm. Je compare deux dates et je veux voir s’il ya lieu le même jour.

Existe-t-il un moyen propre de le faire en utilisant le package moment ou en utilisant du javascript ou du texte dactylographié?

28
reza

Le prototype Date comporte des API qui vous permettent de vérifier l'année, le mois et le jour du mois, ce qui semble simple et efficace.

Vous voudrez peut-être décider si votre application a besoin que les dates soient les mêmes du point de vue des paramètres régionaux où votre code est exécuté ou si la comparaison doit être basée sur des valeurs UTC.

function sameDay(d1, d2) {
  return d1.getFullYear() === d2.getFullYear() &&
    d1.getMonth() === d2.getMonth() &&
    d1.getDate() === d2.getDate();
}

Il existe les getters UTC correspondants getUTCFullYear(), getUTCMonth() et getUTCDate().

47
Pointy
var isSameDay = (dateToCheck.getDate() === actualDate.getDate() 
     && dateToCheck.getMonth() === actualDate.getMonth()
     && dateToCheck.getFullYear() === actualDate.getFullYear())

Cela garantira que les dates sont dans la même journée.

En savoir plus sur Javascript Dateto string

6
Daniel Taub