Maison > interface Web > js tutoriel > le corps du texte

Comment vérifier deux horodatages pour le même jour en JavaScript ?

PHPz
Libérer: 2023-09-15 21:45:03
avant
924 Les gens l'ont consulté

如何在 JavaScript 中检查同一天的两个时间戳?

Vous n'utilisez jamais JavaScript lors du développement d'une application et vous n'utilisez jamais d'objets Date. L'objet Date est très important en JavaScript car il nous permet de créer et de manipuler des dates selon les exigences du développeur.

Dans ce tutoriel, nous apprendrons à vérifier si deux horodatages sont le même jour ou des jours différents. En développement temps réel, c’est très utile. Par exemple, nous souhaitons que les utilisateurs effectuent certaines tâches quotidiennes. Nous devons donc vérifier si l'utilisateur a effectué la tâche d'aujourd'hui, nous pouvons le vérifier en comparant la dernière date à laquelle la tâche a été effectuée avec la date actuelle.

Comparez respectivement l'année, le mois et le jour de deux objets Date

L'objet

Date() contient les méthodes getFullYear(), getMonth() et getDate() pour obtenir respectivement l'année, le mois et le jour à partir d'une valeur de date. Nous pouvons vérifier si l’année, le mois et le jour de deux horodatages sont identiques ; ils correspondent tous deux au même jour.

Grammaire

Les utilisateurs peuvent vérifier deux horodatages du même jour à l'aide des opérateurs getFullYear(), getMonth(), getDate() et d'égalité selon la syntaxe suivante.

if (
   date1.getFullYear() === date2.getFullYear() &&
   date1.getMonth() === date2.getMonth() &&
   date1.getDate() === date2.getDate()
) {
   
   // date is the same
} else {
   
   // date is not the same
} 
Copier après la connexion

Dans la syntaxe ci-dessus, date1 et date2 sont deux horodatages différents.

Exemple

Dans l'exemple ci-dessous, nous avons créé trois dates nommées date1, date2 et date3. Nous avons créé la fonction compareTwoDates() qui utilise la logique ci-dessus pour comparer deux horodatages du même jour.

<html>
<body>
   <h3>Compare the<i> year, month, and date </i> to check for two timestams of same day.</h3>
   <p id = "output"> </p>
   <script>
      let output = document.getElementById("output");
      var date1 = new Date();
      var date2 = new Date(date1.getTime() - 3000);
      function compareTwoDates(date1, date2) {
         
         // if the year, month, and date are the same, it means two dates are on the same day
         if (
            date1.getFullYear() === date2.getFullYear() &&
            date1.getMonth() === date2.getMonth() &&
            date1.getDate() === date2.getDate()
         ) {
            output.innerHTML += date1 + " and <br>" + date2 + " <br>are of same day. </br><br>";
         } else {
            output.innerHTML += date1 + " and <br>" + date2 + " <br>are not of same day. </br>";
         }
      }
      compareTwoDates(date1, date2);
      let date3 = new Date(2020, 11, 10);
      compareTwoDates(date1, date3);
   </script> 
</body>
</html>
Copier après la connexion

Réglez les heures, les minutes, les secondes et les millisecondes à zéro et comparez deux dates

La méthode

setHours() de l'objet Date() nous permet de définir les heures, les minutes, les secondes et les millisecondes dans l'horodatage. Il faut quatre paramètres, représentant les heures, les minutes, les secondes et les millisecondes. De plus, les trois derniers paramètres sont facultatifs, mais nous les mettons tous à zéro. Lorsque nous mettons les heures, les minutes, les secondes et les millisecondes à zéro, nous pouvons obtenir l'horodatage du début de la journée. Si deux horodatages ont la même heure de début, ils correspondent au même jour.

Grammaire

Suivez la syntaxe ci-dessous pour comparer deux horodatages du même jour.

date1.setHours(0, 0, 0, 0);
date2.setHours(0, 0, 0, 0);
   
// compare timestamp
if (date1 == date2) {
   
   // date is the same
} else {
   
   // date is not the same
} 
Copier après la connexion

Dans la syntaxe ci-dessus, nous comparons date1 et date2 après avoir mis les heures à zéro à l'aide de la méthode setHours().

Exemple

Dans l'exemple ci-dessous, nous avons créé deux horodatages à l'aide d'objets Date(). La fonction CompareTwoDates() vérifie si les horodatages correspondent au même jour en définissant les heures, minutes, secondes et millisecondes des deux horodatages sur zéro.

<html>
<body>
   <h3>Seting<i> Hours, minutes, seconds, and milliseconds </i> to zero to check for two timestamps of the same day </h3>
   <p id="output"></p>
   <script>
      let output = document.getElementById("output");
      var date1 = new Date();
      var date2 = new Date(date1.getTime() - 3786000);
      function compareTwoDates(date1, date2) {
         
         // set hours, minutes, seconds, and milliseconds zero in the timestamp
         date1.setHours(0, 0, 0, 0);
         date2.setHours(0, 0, 0, 0);
         
         // compare timestamp
         if (date1 == date2) {
            output.innerHTML += date1 + " and <br>" + date2 + "<br> are of same day. </br>";
         } else {
            output.innerHTML += date1 + " and <br>" + date2 + "<br> are not of same day. </br>";
         }
      }
      compareTwoDates(date1, date2);
   </script>
</body>
</html> 
Copier après la connexion

Utilisez la méthode toDateString()

La méthode

toDateString() nous permet d'obtenir uniquement la chaîne de date de l'horodatage et elle supprime l'heure de l'horodatage et renvoie uniquement la chaîne de date. Si la chaîne de date de deux horodatages est la même, alors nous pouvons dire que les deux sont le même jour.

Grammaire

Suivez la syntaxe suivante pour vérifier deux horodatages du même jour à l'aide de la méthode toDateString().

if (date1.toDateString() == date2.toDateString()) {
   
   // dates are of the same day
} else {
   
   // dates are not on the same day
} 
Copier après la connexion

Exemple

Dans l'exemple ci-dessous, lorsque l'utilisateur clique sur le bouton "Comparer deux dates", il appelle la fonction isForSameDays(). Dans la fonction isForSameDays(), nous utilisons la méthode toDateString() pour obtenir uniquement la chaîne de date de l'horodatage et utilisons l'opérateur d'égalité pour comparer les deux chaînes de date.

<html>
<body>
   <h3>Using the <i> toDateString() method </i> to check for two timestams of same day.</h3>
   <p id="output"></p>
   <script>
      let output = document.getElementById("output");
      var date1 = new Date();
      var date2 = new Date(2020, 01, 21, 12, 23, 22);
      
      // compare timestamp using the toDateString() method
      if (date1.toDateString() == date2.toDateString()) {
         output.innerHTML += date1 + " and " + date2 + " are of same day. </br>";
      } else {
         output.innerHTML += date1 + " and " + date2 + " are not of same day. </br>";
      }
   </script>
</body>
</html>
Copier après la connexion

Ce tutoriel nous apprend trois méthodes pour vérifier deux horodatages du même jour. La troisième façon d’utiliser la méthode toDateString() est une simple ligne.

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:tutorialspoint.com
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!