0
votes

Comparaison de temps angulaire dans TypeScript

Dans mon application angulaire, je dois vérifier si l'heure actuelle est supérieure à 15h. J'obtiens l'heure actuelle en utilisant la date.now () et dans le constructeur, j'ai, donc je reçois le temps de mise à jour pour chaque minute, xxx

maintenant, je dois vérifier si l'heure actuelle est supérieure à celle de l'heure actuelle que 15h00.


2 commentaires

Fyi, seinterval (fn, millisecondes) , vous vérifiez donc toutes les millisecondes pas toutes les minutes


Vous voulez comparer des heures. Créez une date date objet const datenow = nouvelle date (date.now (now ()) et vérifiez s'il est supérieur à 3h00 si (DATENOW.GETHOURS ()> 15 ) ...


3 Réponses :


5
votes

J'utilise gethours () pour obtenir les heures de la journée. Il retournera dans une plage comprise entre 0 et 23; Par conséquent, 15 est la 15 heures que vous recherchez.

aussi 1000 * 60 code> est le nombre de temps pendant 1 minute en millisecondes. P>

p>

setInterval(() => {
  this.today = new Date();
  if (this.today.getHours() >= 15){
    console.log('Current time is greater than 3 PM!');
  }
}, 1000*60);


1 commentaires

Il serait également logique de ne pas vérifier plus tôt, comme 1000 * 60 * (24 - this.today.gethours ()) juste avec l'ajout pour le calculer non en heures mais dans la SP



0
votes

Pour vérifier si l'heure actuelle est supérieure à 15h00, le meilleur sera d'utiliser la bibliothèque de moments. S'il vous plaît jeter un coup d'oeil comment il a été fait ici


0 commentaires

1
votes

au lieu de tester dans un intervalle, j'utiliserais la méthode Settimeout code> pour définir une alarme.

aucun sens qui gaspille des calculs sur un intervalle, lorsque nous savons quand cela sera fait. P >

p>

var threeOClock = new Date();
threeOClock.setHours(15, 0, 0);
console.log(threeOClock.toTimeString());


0 commentaires