1 : Calculer le nombre de jours de différence entre deux dates
Par exemple:
str1 = "20/01/2002"
str2 = "2002-10-11"
Comment calculer le nombre de jours entre str1 et str2 en utilisant javaScript ?
Copiez le code comme suit :
<html>
<tête>
<méta http-equiv="Content-Type" content="text/html; charset=gb2312">
<titre></titre>
</tête>
<corps>
<button onClick="btnCount_Click()">Calculer la différence en jours</button>
<langage de script="JavaScript">
fonction btnCount_Click(){
s1 = "2002-1-10"
s2 = "2002-10-1"
alerte(DateDiff(s1,s2))
}
//Fonction pour calculer la différence en jours, universelle
function DateDiff(sDate1, sDate2){ //sDate1 et sDate2 sont au format 2002-12-18
var aDate, oDate1, oDate2, iDays
aDate = sDate1.split("-")
oDate1 = new Date(aDate[1] + '-' + aDate[2] + '-' + aDate[0]) //Convertir au format 18-12-2002
aDate = sDate2.split("-")
oDate2 = nouvelle Date(aDate[1] + '-' + aDate[2] + '-' + aDate[0])
iDays = parseInt(Math.abs(oDate1 - oDate2) / 1000/60/60/24) //Convertir la différence en millisecondes en jours
retourner iDays
}
2 : Calculer la date après un certain nombre de jours
En JavaScript, calculez quelle date se situe plusieurs jours après la date d'aujourd'hui. C'est beaucoup moins pratique que dans .Net. Une fonction peut résoudre le problème. Ce problème m'a troublé pendant un moment, et finalement le problème a été résolu grâce à l'introduction d'un internaute. Postez-le et partagez-le.
Copiez le code comme suit :
<langage de script="javascript" type="text/javascript">
var startDate = nouvelle Date (); var intValue = 0;
var date de fin = null ;
intValue = startDate.getTime(); intValue += 100 * (24 * 3600 * 1000) ;
endDate = nouvelle Date (intValue);
alert (endDate.getFullYear()+"-"+ (endDate.getMonth()+1)+"-"+ endDate.getDate());
</script>
Le 100 ci-dessus représente la date 100 jours plus tard, que vous pouvez modifier. Date.getTime() dans JS ne peut prendre en charge que les dates postérieures au 1970.01.01 ; et le mois est compris entre 0 et 11, ce qui est un peu différent, alors évitez-le. Bien entendu, vous pouvez également calculer des dates après une date spécifique.
Copiez le code comme suit :
<langage de script="javascript" type="text/javascript">
var startDate = nouvelle date (2007, (8-1), 1, 10, 10, 10) ;
var valeurint = 0 ;
var date de fin = null ;
intValue = startDate.getTime(); intValue += 100 * (24 * 3600 * 1000) ;
endDate = nouvelle Date (intValue);
alert (endDate.getFullYear()+"-"+ (endDate.getMonth()+1)+"-"+ endDate.getDate());
</script>