Je travaille sur une application où je dois trouver la différence entre la date à laquelle l'utilisateur entre dans un formulaire et la date actuelle. En ce moment, avec le code que j'ai, quand je tape la date actuelle, il montre toujours une différence de 2. J'apprécierais tout conseil sur la façon dont je pourrais redresser cela.travailler avec des dates en javascript
function compareDates(dueDate) { //dueDate is the value from the form
var cdate = new Date();
var cdateparse = Date.parse(cdate);
var dueDateparse = Date.parse(dueDate);
var diff = dueDateparse - cdateparse;
var daysCal = diff/1000/60/60/24;
var days = Math.floor(daysCal);
console.log(days); //keeps returning -2 when I enter the current date into the form
try {
if(diff < 0) {
mymessage = "this task is overdue by" + " " + -days + " " + "days"; //shows 2
throw new Error("you are overdue");
}
}
catch(ex) {
alert(ex.message);
return;
}
if(diff > 0) {
console.log("the difference is greater than 0");
mymessage = "you have" + " " + days + " " + "more days";
}
}
et quand j'essaie une date qui est deux jours dans le futur il est dit "j'ai 0 jours de plus" – user2084813
Pouvez-vous donner un exemple de chaîne de la date que vous entrez dans le formulaire? – Jodes
Donnez-nous un exemple d'entrée pour dueDate s'il vous plaît –